如何访问JSON元素?

时间:2015-04-07 17:32:26

标签: javascript jquery json

如何通过javascript或JQuery访问此JSON元素并使用循环?

{"d":"[{\"aa\":\"11111111111111111111\",\"bb\":\"222222222222222222\"},{\"aa\":\"33333333333333333333\",\"bb\":\"444444444444444444\"}]"}

3 个答案:

答案 0 :(得分:0)

您可以使用for循环

循环访问对象

例如

var jsonData = {"d":"[{\"aa\":\"11111111111111111111\",\"bb\":\"222222222222222222\"},{\"aa\":\"33333333333333333333\",\"bb\":\"444444444444444444\"}]"};

for (var key in jsonData){
    console.log(jsonData[key]); //will output [{\"aa\":\"11111111111111111111\",\"bb\":\"222222222222222222\"},{\"aa\":\"33333333333333333333\",\"bb\":\"444444444444444444\"}]
    console.log(key) //will output "d"
}

答案 1 :(得分:0)

var mydata = {"d":"[{\"aa\":\"11111111111111111111\",\"bb\":\"222222222222222222\"},
{\"aa\":\"33333333333333333333\",\"bb\":\"444444444444444444\"}]"};

var result = mydata.d;

var objects = jQuery.parseJSON(result);

$.each(objects , function(idx, obj) {
    alert(obj.aa);
    //or you can use idx
    alert(objects[idx].aa);
    alert(objects[idx].bb);
});

以下是工作代码:https://jsfiddle.net/1te9ojqt/

答案 2 :(得分:0)

看起来你在对象中有一个对象。你可以做到

jsonData.d = JSON.parse(jsonData.d);

使它成为child和json对象而不是字符串。

您可以使用jQuery.each迭代对象。

https://api.jquery.com/jquery.each/

实施例

var jsonData = {"d":"[{\"aa\":\"11111111111111111111\",\"bb\":\"222222222222222222\"},{\"aa\":\"33333333333333333333\",\"bb\":\"444444444444444444\"}]"};

$.each(jsonData, function(key, value){
     jsonData[key] = JSON.parse(value);
});

这将使对象清晰。如果你需要的是一个递归