何时可以在JSON中省略引号?

drm*_*ror 4 json

它似乎是JSON最保守的秘密之一:你究竟能在字符串周围省略引号 - 你还应该使用什么引号(单引号或双引号)?

JSON标准是非常清楚的:使用双引号,并且始终使用它们.然而似乎没有人遵循这一点,解析器看起来一般都很好.

例如,JSON文档中的键通常似乎不需要引号.(我猜这是因为解析器可以假设密钥必须是字符串文字).但这是一个实际的规则吗?还有其他这样的规则吗?它们是特定于解析器还是特定于语言?

请注意,虽然问题是关于JSON,但这包括在给定编程语言中表达JSON对象的标准方法.如果某种语言(例如JavaScript)具有偏离JSON标准的官方规则,那么查看它们的定义会很有帮助.

hob*_*bbs 6

决不.删除引号在JavaScript代码中的文字中是合法的,但在JSON中是非法的.字符串总是被引用,键始终是字符串."宽松的JSON"解析器可能存在接受不带引号的钥匙或其他东西非法JSON,但是这并不能改变一个事实,即它是非法的JSON这样,并没有JSON解析器需要接受它.