| /* Any copyright is dedicated to the Public Domain. |
| * http://creativecommons.org/licenses/publicdomain/ */ |
| |
| // JSON.stringify ignores symbol-keyed properties, even enumerable ones. |
| |
| var obj = {a: 1}; |
| obj[Symbol.for("ponies")] = {toJSON: function () { throw "fit"; }}; |
| obj[Symbol.iterator] = {toJSON: function () { throw "fit"; }}; |
| assertEq(JSON.stringify(obj), '{"a":1}'); |
| |
| var replacer = function (k, v) { |
| if (typeof k === "symbol") |
| throw "fit"; |
| return v; |
| }; |
| assertEq(JSON.stringify(obj, replacer), '{"a":1}'); |
| |
| if (typeof reportCompare === 'function') |
| reportCompare(0, 0, 'ok'); |