一个网站返回以下JSON响应,我将如何使用它(在javascript中)?
[{"ID1":9996,"ID2":22}]
Run Code Online (Sandbox Code Playgroud)
JSON只是返回一个数组吗?
如果您使用http://www.JSON.org/json2.js,您可以使用它的方法JSON.parse将json 字符串作为对象检索(不使用eval(被认为是邪恶的)),所以在这种情况下你会用:
var nwObj = JSON.parse('[{"ID1":9996,"ID2":22}]');
alert(nwObj.ID1); //=> 9996
Run Code Online (Sandbox Code Playgroud)
我们用:
function evalResponse(response) {
var xyz123 = null;
eval("xyz123 = " + response);
return xyz123;
}
Run Code Online (Sandbox Code Playgroud)
另一种方法是简单地使用:
var myObj = eval(response);
Run Code Online (Sandbox Code Playgroud)
基本上,您必须调用eval()
响应来创建一个javascript对象.这是因为当你从AJAX调用中获取它时,响应本身只是一个字符串.在你eval
之后,你有一个你可以操纵的对象.
function myCallback(response) {
var myObj = evalResponse(response);
alert(myObj.ID1);
}
Run Code Online (Sandbox Code Playgroud)
您可以使用JavaScript库来为您处理此问题.或者,您可以尝试自己解析字符串.eval()
有它自己的问题,但它的工作原理.
归档时间: |
|
查看次数: |
1353 次 |
最近记录: |