2

我通过 jQuery 得到一个 JSON 文件$.getJSON(url, function(data) {......并且想用其中一个来解析它

var obj = JSON.parse(data);

或者

var obj = jQuery.parseJSON(data);

第一行给我“语法错误”(使用 IE8,应该支持JSON.parse),第二行给我“'center' is null or not an object”。

这是我正在使用的有效 JSON 文件:

{
"center":{"lat":"51.99637","lon":"13.07520"},
"locations":
[
    { "name":"a string","info":"another string" },
    ... some more here ...
]
}

我对Javascript不太熟悉。我究竟做错了什么?

如果我使用一个简单的 JSON 数组(= 只是位置的内容),我会使用$.each. 在我可以使用 JSON.parse 之前,我是否必须对数据做一些事情?

4

2 回答 2

5

问题是函数的名称有点误导:它没有给你,JSON但已经是一个解析的对象。它所做的是获取一些JSON并为您解析它。

data是一个普通的 javascript 对象,你不需要解析它。

于 2013-02-14T15:37:55.937 回答
2

$.getJSON 将为您解析数据 - 您无需事后手动解析。

于 2013-02-14T15:38:04.847 回答