Javascript 为什么JSON.parse(“{key:”value“}”)做得很好,而JSON.parse(“{key:”value“}”)做得不好?
从节点REPL:Javascript 为什么JSON.parse(“{key:”value“}”)做得很好,而JSON.parse(“{key:”value“}”)做得不好?,javascript,json,node.js,Javascript,Json,Node.js,从节点REPL: > JSON.parse('{"key" : "value"}') { key: 'value' } > JSON.parse('{key : "value"}') SyntaxError: Unexpected token ILLEGAL at Object.parse (native) at [object Context]:1:6 at Interface.<anonymous> (repl.js:171:22)
> JSON.parse('{"key" : "value"}')
{ key: 'value' }
> JSON.parse('{key : "value"}')
SyntaxError: Unexpected token ILLEGAL
at Object.parse (native)
at [object Context]:1:6
at Interface.<anonymous> (repl.js:171:22)
at Interface.emit (events.js:64:17)
at Interface._onLine (readline.js:153:10)
at Interface._line (readline.js:408:8)
at Interface._ttyWrite (readline.js:585:14)
at ReadStream.<anonymous> (readline.js:73:12)
at ReadStream.emit (events.js:81:20)
at ReadStream._emitKey (tty_posix.js:307:10)
JSON中的所有键都是字符串,所有字符串都用双引号分隔
JavaScript允许您使用不同的字符来分隔字符串,并允许您使用标识符作为对象文本中的键-但JSON不是JavaScript。JSON中的所有键都是字符串,所有字符串都用双引号分隔
JavaScript允许您使用不同的字符来分隔字符串,并允许您使用标识符作为对象文本中的键,但JSON不是JavaScript。JSON要求键和值都是字符串
JSON希望键和值都是字符串
因为您的第二个示例不是JSON 因为第二个示例不是JSON +1。此外,如果要检查某个内容是否是有效的json,可以使用诸如+1之类的验证器。此外,如果您想检查某个内容是否是有效的json,您可以使用一个验证器,例如值实际上不必是字符串。它们可以是布尔、数字等,但键必须是字符串。值实际上不必是字符串。它们可以是布尔、数字等,但键必须是字符串。