发现了一个我无法解决的有趣问题。
1个条件。只能更改json!
我无法满足以下条件:data.hasOwnProperty("\u{0030}")
class JobSeeker {
get data() {
return '{"\\\\u{0030}": {}}';
}
}
let data;
console.assert(
typeof (data = JSON.parse(new JobSeeker().data)) === "object"
&& data.hasOwnProperty("\u{0030}")
&& typeof Object.values(data)[0] === "object"
&& Boolean(data[+false]) === false
);
您认为适合所有条件的json是什么?
答案 0 :(得分:2)
如果您将data
吸气剂更改为此:
get data() {
return '{"\\u0030": null}';
}
通过第一个测试,因为返回了有效的JSON字符串。第二个测试通过,因为“ 0”是对象中唯一属性的名称。第三次测试通过,因为typeof null
是"object"
。第四项测试通过,因为Boolean(null)
是false
。
我认为,如果您将\\u0030
更改为普通0
,它也会起作用。