javascript - 对于前端开发人员来说这是一个有趣的挑战

标签 javascript json

发现一个我无法解决的有趣问题。

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 是什么?

最佳答案

如果将 data getter 更改为:

get data() {
  return '{"\\u0030": null}';
}

通过了第一个测试,因为返回了有效的 JSON 字符串。第二个测试通过,因为“0”是对象中唯一属性的名称。第三个测试通过,因为 typeof null"object"。第四个测试通过,因为 Boolean(null)false

我认为如果将 \\u0030 更改为简单的 0 也会起作用。

关于javascript - 对于前端开发人员来说这是一个有趣的挑战,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57612123/

相关文章:

javascript - 使用 HTML 5 File API 加载 JSON 文件

javascript - 将 afterSave 与 Parse Cloud Code 结合使用

json - 如何用jq获取完整的对象/数组?

php - 从 json_decode 获取单个元素

java - Java中的simpleJson解析

java - JSON UTF-8 编码错误

javascript - 尝试理解使用对象作为 previousValue 的减少

javascript 函数不会在 IE 中触发

javascript - 如何在javascript中获取Kartik radioList的检查值

javascript - 如何截取网页的屏幕截图?