我通过jQuery $.getJSON(url, function(data) {
... 得到一个JSON文件,并希望与解析,要么JSON.parse()来不工作jQuery的数据对象
var obj = JSON.parse(data);
或
var obj = jQuery.parseJSON(data);
第一行给我“语法错误”(使用IE8,应支持JSON.parse
),第二个给我“'中心'为空或不是对象”。
这是我使用的有效的JSON文件:
{
"center":{"lat":"51.99637","lon":"13.07520"},
"locations":
[
{ "name":"a string","info":"another string" },
... some more here ...
]
}
我不是太熟悉JavaScript。我究竟做错了什么?
如果我使用一个简单的JSON数组(仅仅是位置的内容),我可以用$.each
得到有效的数据。 在使用JSON.parse之前,我是否必须对数据做些什么?
也许应该是'JSON.parseFromString' – 2013-02-14 15:39:07
我建议重命名功能'$ .fetchSomeJSONAndParseItForMePlease = $ .getJSON;' – 2013-02-14 15:40:32
考虑当有人称某个JavaScript对象为“JSON”时,人们看起来有多愤怒,你会想更多的人会将jQuery方法名称改为'$ .getJavaScriptDataStructure' – 2013-02-14 15:42:43