最低有效JSON是多少?

最低有效JSON是多少?,第1张

最低有效JSON是多少?

在撰写本文时,JSON仅在RFC4627中进行了描述。它(在“2”开头)将JSON文本描述为序列化的对象或数组。

这意味着在符合该标准的解析器和字符串化器中, 只有

{}
并且
[]
是有效的完整JSON字符串。

但是,ECMA-404的引入改变了这一点,更新的建议。


然而,为了进一步混淆该问题,Web浏览器中可用的

JSON
对象(例如
JSON.parse()
JSON.stringify()
)在ES5中进行了标准化,并且明确定义了可接受的JSON文本,如下所示:

本规范中使用的JSON交换格式与RFC 4627完全相同,但有两个例外:

  • ECMAscript JSON语法的顶级JSONText生成可以由任何JSONValue组成,而不是被限制为RFC
    4627指定的JSONObject或JSONArray。

  • 抢断

这意味着即使JSON对象在技术上遵循RFC 4627,JSON对象也可以接受所有JSON值(包括字符串,空值和数字)。

请注意,因此,您可以通过

JSON.stringify(5)
,在符合标准的浏览器中对数字进行字符串化,该数字将被另一个遵循RFC4627的解析器拒绝,但该解析器没有上面列出的特定异常。例如,Ruby似乎就是这样一个例子,它 接受对象和数组作为root,即“它还将对标量类型和NULL进行编码和解码”。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5432234.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存