Javascript JSON对象属性名称必须用双引号引用,这在什么标准中是正式的?

Javascript JSON对象属性名称必须用双引号引用,这在什么标准中是正式的?,javascript,json,Javascript,Json,选中此处: 在这里: 我所看到的只是名称必须是字符串,而不是不能使用单引号。别误会我的意思,我在船上为JSON引用了名字。它保护开发人员不使用不合法的JS变量名的属性名,而且JSON的强大使用经常将传统值放入属性名中,例如2D数组建模表的映射缩减 我还认为,所有名称都应该一致使用一种或另一种引号类型,以避免在试图用某种语言解析JSON时做出假设,而这种语言没有方便的JSON解析库/本机方法,但我在这些规范中没有看到任何坚持必须是双精度或单精度的东西 我在第二个链接中看到的是,它们必须是字符串

选中此处:

在这里:

我所看到的只是名称必须是字符串,而不是不能使用单引号。别误会我的意思,我在船上为JSON引用了名字。它保护开发人员不使用不合法的JS变量名的属性名,而且JSON的强大使用经常将传统值放入属性名中,例如2D数组建模表的映射缩减

我还认为,所有名称都应该一致使用一种或另一种引号类型,以避免在试图用某种语言解析JSON时做出假设,而这种语言没有方便的JSON解析库/本机方法,但我在这些规范中没有看到任何坚持必须是双精度或单精度的东西


我在第二个链接中看到的是,它们必须是字符串。正如许多JSON验证器所想的那个样,从哪里可以确定它们必须被双重引用?还有其他来源吗?如果是,谁拥有这个小镇?我感觉自己就像一个迷路的衣衫褴褛的人。

从RFC的第4页,您可以链接到:

string = quotation-mark *char quotation-mark
...
quotation-mark = %x22      ; "
属性名称必须是字符串,但字符串必须用引号(而不是撇号)分隔

另请参见json.org。请注意,它以
开始和结束,而不是允许
作为替代的分支。

摘自网站:

字符串定义为用双引号括起来的字符序列

在RFC中:

string = quotation-mark *char quotation-mark
在哪里

quotation-mark = %x22      ; "

我确实错过了,但是除了gif图表之外,还有什么东西是关于内容的超显式而不是包装字符串标记的吗?我认为这是关于包装的非常明确的…只有一个允许的字符,
。怎么可能更明确呢?:)啊。误解了规范。这是有道理的。谢谢。那么字符串值也必须双引号?我很确定验证器一直让我在上面滑动。然后你使用的验证器坏了:)我推荐是的,我会坚持用Crockford。