在Javascript中循环通过JSON数组

时间:2015-02-04 20:47:11

标签: javascript arrays json

我有一个从我的PHP ajax调用返回的JSON数组。我需要遍历它并显示所有信息。我似乎无法使用方法。我习惯使用foreach key =>值,在PHP中,但这似乎不是一个选项。

我的数组是

[{"Type":"Person","Durable":"Durable","Url":"test.com"},
{"Type":"Person","Durable":"Durable","Url":"test2.com"},
{"Type":"Person","Durable":"Durable","Url":"test3.com"},
{"Type":"Person","Durable":"Durable","Url":"test4.com"},
{"Type":"Location","Durable":"Durable","Url":"test5.com"},
{"Type":"Phone","Durable":"Durable","Url":"test6.com"}]

每次数组长度不总是6项时,数组的长度会发生变化。 循环将进入我的成功处理程序。我只需要有关如何访问数据的帮助。

success: function(data){

}

3 个答案:

答案 0 :(得分:1)

您可以使用简单的循环语句:

   success: function(data){
    var i, l;
    for (i = 0, l = data.length; i < l; i++) { 
        // access the object: data[i]
        console.log(data[i]);
    }
  }

这是最有效的方式。

答案 1 :(得分:0)

你可以循环遍历数组:

success: function(data){
  for (var i = 0; i < data.length; i++) { 
    var obj = data[i];
    var type = obj.Type;
    var durable = obj.Durable;
    var url = obj.Url;
    // do work
  }
}

答案 2 :(得分:-1)

您可以使用数组原型forEach

data.forEach(function(item) {
    var type = item["Type"];
    var durable = item["Durable"];
    /*...*/
});