2013-11-10 61 views
0
var myJSON =  
{"data": 
    [{"obj1":"value1", 
     "obj2":"value2"}, 

    {"obj1":"value3", 
     "obj2":"value4"}, 

    {"obj1":"value5", 
    "obj2":"value6"}] 
}; 

我有一個看起來像上面的數組。我想遍歷每個obj2並獲取值。這怎麼能在Javascript/jQuery中完成?Javascript/jQuery:通過對象內的數組值循環

我試着使用:

for (var i = 0; i < myJSON.data.length; i++) { 
    console.log(i.obj2); 
} 

,但它看起來好像myJSON.data不返回長度...

回答

0

問題是你試圖從你的i變量訪問obj2鍵,這是不是你的陣列。試試這個方法:

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

其他方式做同樣的:

for(var i in d=myJSON.data){ 
    console.log(d[i].obj2); 
} 

myJSON.data.forEach(function(a){ 
    console.log(a.obj2) 
}) 
1
for (var i = 0; i < myJSON.data.length; i++) { 
    console.log(myJSON.data[i].obj2); 
} 
2

i只是一個迭代器,你可以使用它來訪問數組

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