我正在尝试使用REPL的节点,从字符串解析失败,如下所示:
$node
> var str="{'a':1,'b':2}"
undefined
> var js=JSON.parse(str)
SyntaxError: Unexpected token ' in JSON at position 1
但是反向解析似乎还可以:
> var json = {a : ' 1 ',b : ' 2'};
undefined
> var str = JSON.stringify(json);
undefined
> str
'{"a":" 1 ","b":" 2"}'
我在哪里弄错了?
答案 0 :(得分:3)
您的JSON中存在语法错误:
{'a':1,'b':2}
^
|
'--- invalid syntax. Illegal character (')
JSON与Javascript对象文字不一样。 JSON是一种文件/数据格式,与对象文字语法兼容,但更为严格。 JSON格式由Douglas Crockford指定,并记录在http://json.org/
JSON和对象文字之间的一些区别:
等