迭代json数组

时间:2012-09-18 01:10:11

标签: json

任何人都可以建议一种在javascript中使用jquery迭代json格式数组的方法。

{"0",{"id":"10", "class": "child-of-9"},"1",{"id":"11", "class": "child-of-10"}}

我需要获得每个班级的价值。

2 个答案:

答案 0 :(得分:0)

你json不正确。它看起来应该更像

{"0": {"id":"10", "class": "child-of-9"},"1": {"id":"11", "class": "child-of-10"}};

一旦完成,您可以使用jQuery.each()来迭代它。

    var data = {"0": {"id":"10", "class": "child-of-9"},"1": {"id":"11", "class": "child-of-10"}};
    jQuery.each( data, function(i,a){
        console.log(a['class']);
    });

顺便说一句,你的json不是数组,它是一个对象。要构建数组版本,它看起来像

[{"id":"10", "class": "child-of-9"},{"id":"11", "class": "child-of-10"}]

答案 1 :(得分:0)

对象没有任何意义,其中键是数字。这实际上是数组如何使用它的索引。您拥有的是对象,而不是数组

转过来:

a = {"0",{"id":"10", "class": "child-of-9"},"1",{"id":"11", "class": "child-of-10"}}

进入这个:

a = [{"id":"10", "class": "child-of-9"},{"id":"11", "class": "child-of-10"}]

你有一个对象数组。这可以使用简单的for循环进行迭代,并通过索引进行访问。

for(var i=0; i<a.length; i++) {
  console.log(a[i]);
}