JSON.parse()不能处理jQuery数据对象

bol*_*ero 2 javascript jquery json

我通过jQuery获得了一个JSON文件$.getJSON(url, function(data) {...并希望用它们解析它

var obj = JSON.parse(data);
Run Code Online (Sandbox Code Playgroud)

要么

var obj = jQuery.parseJSON(data);
Run Code Online (Sandbox Code Playgroud)

第一行给了我"语法错误"(使用IE8,应该支持JSON.parse),第二行给我"'center'是null或不是对象".

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

{
"center":{"lat":"51.99637","lon":"13.07520"},
"locations":
[
    { "name":"a string","info":"another string" },
    ... some more here ...
]
}
Run Code Online (Sandbox Code Playgroud)

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

如果我使用一个简单的JSON数组(=只是位置的内容),我会得到有效的数据$.each.在我可以使用JSON.parse之前,我是否必须对数据执行某些操作?

Den*_*ret 5

问题是函数的名称有点误导:它不会给你JSON但已经解析了对象.它的作用是获取一些JSON并为你解析它.

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