gpt4 book ai didi

javascript - JSON 和二进制数

转载 作者:行者123 更新时间:2023-11-30 09:27:16 25 4
gpt4 key购买 nike

现在新的 javascript 接受二进制数(即 0b1111)不应该也接受 JSON 吗?或者它们是两个独立的实体?

console.log(Number.isNaN(0b1111); // = 'false' meaning it is a number

但是

JSON.parse('{"a":0b1111}');

不起作用。

最佳答案

JSON 被特意设计为 Javascript 语法的一个有限子集。这允许它用于表示常见的数组和对象格式,同时最大限度地降低解析器的复杂性。因此,尽管 Javascript 字面量语法允许使用多种替代方式来表示同一事物,但 JSON 通常只允许一种方式。

例如在 Javascript 中,您可以在字符串周围使用单引号或双引号,但 JSON 只允许使用双引号。键对象周围的引号在 Javascript 中是可选的(如果键是有效标识符),但它们在 JSON 中是必需的。

更改 JSON 以允许更多格式会有问题,因为它会导致与旧解析器的兼容性问题。所以 JSON 设计者不太可能将它扩展为不需要的东西。我认为最近所做的唯一更改是正式允许不是对象或数组的顶级值;大多数解析器已经接受了这一点。因此,除非所有流行库的作者都添加二进制整数,否则他们不太可能将此作为 JSON 规范的一部分。

关于javascript - JSON 和二进制数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48649105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com