jQuery parseJSON失败

时间:2011-03-22 06:55:31

标签: javascript jquery json

我正在使用jQuery parseJSON函数做一些事情。

这是代码,但无效

var obj = $.parseJSON("{'w':'w-1'}");
alert(obj.w);

经过一段时间的调试后,我将单引号更改为双引号,如下面的代码所示,它运行正常。

var obj = $.parseJSON('{"w":"wb-001"}');
alert(obj.w);

一些相关问题

1)我只是想知道为什么单引号不起作用?

2)单引号适用于eval但不适用于parseJSON,为什么?

var obj = eval("("+"{'w':'w-1'}"+")");
alert(obj.w);

3)我通常这样写<​​/ p>

var someString = "HELLO WORLD";

var someString = 'HELLO WORLD';

遇到上述问题后,我想知道我过去的javascript编码是否出错了。

Thanx提前, kvj

1 个答案:

答案 0 :(得分:5)

1)JSON规范说使用双引号

  

String(带反斜杠转义的双引号Unicode)

Source

2)eval()不是JSON解析器,而是JavaScript评估器。它将运行您的字符串,就像它是JavaScript一样。

3)在JavaScript中,它们具有相同的含义。只是保持一致。我个人使用',因为我有时处理序列化HTML,并使用"作为属性值。