如何正确声明json字符串?

如何正确声明json字符串?

问题描述:

所以我测试宣告一个JSON字符串的方法有两种:如何正确声明json字符串?

1:

json = "{'name': 'ajsie'}"; 
obj = JSON.parse(json); // SyntaxError: Unexpected token ILLEGAL 

2:

json = '{"name": "ajsie"}'; 
obj = JSON.parse(json); // Worked! 

什么是与第一个问题吗?

单引号不是字符串的有效引号字符。从http://www.json.org/:“值可以是在双引号串......”

json.org定义字符串使用“,而不是”这是我的猜测在JSON对象

检查http://www.json.org/

字符串。必须用双引号。

+0

好吧,当我在Chrome中运行'asd'时,它会自动将它转换为“asd”。因此,我认为那没问题。 – ajsie 2010-10-21 22:11:06

+0

是的,这是一个棘手的错误@weng。人们会认为单引号和双引号可以与其他地方互换。 – ArtBIT 2010-10-21 22:14:54

http://www.json.org/是JSON有很大的参考。显然,你必须使用在JSON字符串双引号,我今天学到新的东西了。:)

{ 'key' : 'val' }格式不正确。