一尘不染

JQuery.parseJSON无法使用字符串

json

我正在尝试将字符串解析为对象。我在下面的链接中查看了jQueryparseJSON文档,
我也包括了jquery库,所以我知道不是那样的。

到目前为止,这是我的代码

var str = "{'val1': 1, 'val2': 2, 'val3': 3}";
var obj = jQueryparseJSON( str );
alert(obj.val1);

在Firebug中,出现以下错误:

SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data

我知道该解决方案很可能非常简单,但是我一直反复忽略它。


阅读 365

收藏
2020-07-27

共1个答案

一尘不染

示例代码中的测试字符串不是有效的JSON:

var str = '{"val1": 1, "val2": 2, "val3": 3}';
var obj = jQuery.parseJSON( str );
alert(obj.val1);

现在,如果由于所有服务使该对象作为JSON字符串可用而执行所有操作,则jQuery 仍然 可能
会为您执行解析步骤。如果您只是想在JavaScript代码中包含对象文字,那么就没有理由完全使用JSON服务:

var obj = { val1: 1, val2: 2, val3: 3 };

创建一个对象。

请注意,JSON语法比JavaScript对象文字语法更严格。JSON坚持要求属性名称用双引号引起来,当然值只能是数字,字符串,布尔值或null

2020-07-27