我正在尝试从http://www.xyz.com/abc.json格式的网址中检索数据。 我一直在尝试使用$ .ajax方法以下列方式实现此目的。
var json = (function () {
var json = null;
$.ajax({
'async': false,
'global': false,
'url': "http://www.xyz.com/abc.json.",
'dataType': "json",
'success': function (data) {
json = data;
}
});
return json;
})();
但是我无法让它运行。我需要遍历检索到的数据并检查一些特定条件。如果json数据有一个名称,可以使用$ .getJSon轻松实现这一点,但文件格式如下:
[{
"name": "abc",
"ID": 46
}]
因为我必须先将其转换并存储在Javascript对象变量中才能使用它。关于我可能出错的地方的任何建议?
答案 0 :(得分:1)
看起来您希望将data
响应转换为json对象,方法是将其包含在{
}
中,然后将其传递给json解析器。
function (data) {
json = JSON.parse("{\"arr\":"+data+"}").arr;
}
然后获取您的数据,它将是
json[0].name //"abc"
答案 1 :(得分:0)
所以你的问题是如何将字符串转换为Json对象? 如果你正在使用Jquery,你可以这样做:
jQuery.parseJSON( jsonString );
所以你的回报应该是:
return jQuery.parseJSON( json );
您可以阅读文档here