Skip to main content

Appendix A. Changes from RFC 4627 (与RFC 4627的变化)

本节列出了本文档与RFC 4627文本之间的变化。

  • 更改了文档的标题和摘要

  • 将对 [UNICODE] 的引用更改为非版本特定的

  • 添加了"JSON规范"部分

  • 添加了"本修订版简介"部分

  • 更改了"JSON文本"的定义,使其可以是任何JSON值,删除了必须是对象或数组的约束

  • 添加了关于重复对象成员名称、成员顺序和互操作性的语言

  • 阐明了数组中的值不要求是相同JSON类型

  • 应用了RFC 4627的勘误#607,以正确对齐"object"定义的图示

  • 在"数字"部分将"as sequences of digits"更改为"in the grammar below",并明确了十进制基数

  • 添加了关于数字互操作性作为IEEE754函数的语言,并添加了IEEE754参考

  • 添加了关于互操作性和Unicode字符以及字符串比较的语言。为此,将旧的"编码"部分转换为"字符串和字符问题"部分,包含三个子节: "字符编码"、"Unicode字符"和"字符串比较"

  • 更改了"解析器"部分的指导,指出实现可以对数字的范围"和精度"设置限制

  • 更新并整理了"IANA注意事项"部分

  • 创建了真正的"安全考虑"部分,并从之前的"IANA注意事项"部分中提取了文本

  • 通过删除以"A JSON text can be safely passed"开头的安全考虑以及与该考虑相关的JavaScript代码,应用了RFC 4627的勘误#3607

  • 在"安全考虑"部分添加了一条注释,指出在JavaScript或JSON文本符合该语言语法的任何其他语言中使用"eval()"函数的风险

  • 在"IANA注意事项"中添加了一条注释,阐明application/json媒体类型缺少"charset"参数

  • 在第一个示例中将"100"更改为100并添加了一个布尔字段

  • 添加了具有简单值(既不是对象也不是数组)的JSON文本示例

  • 添加了"贡献者"部分,感谢Douglas Crockford

  • 添加了对RFC 4627的引用

  • 将ECMAScript引用从规范性移至信息性,并更新为引用ECMAScript 5.1,并添加了对ECMA 404的引用