[英]content of json array - how to get all elements using js
我正在嘗試獲取json字符串中數組(未知大小)的內容。
下列:
var text = '[ { "_id" : { "$oid" : "54426dbfe4b0a1df0eb4a0f6"} , "user" : "fran" , "fecha" : "18/10/2014" , "time" : "7"} , { "_id" : { "$oid" : "54426efae4b00975f860fc06"} , "user" : "elle" , "fecha" : "18/10/2014" , "time" : "9" , "w" : { "w1" : "dog, dok" , "w2" : "cat, kat", "w3" : "pork, porc"}} ]';
obj = JSON.parse(text);
document.getElementById("demo").innerHTML =
//obj[0].score;
//obj[0].user;
//obj[1].w.w1;
for (var i in obj[1].w) {
console.log(i);
}
如何遍歷並獲取“ w”的所有值?
問候。
試試下面的東西
for (var i in obj[1].w) {
console.log(obj[1].w[i]);
}
您已經了解了很多,在for循環中需要的是obj[1].w[i]
來訪問每個值。
請記住,此代碼非常依賴於它始終是數組中的第二個對象,您應該使其更具動態性或在執行過程中檢查錯誤。
您將需要recursive
東西。
這是我寫的簡短內容,您可能需要擴展它:
function print(obj) {
for (var key in obj) {
if (typeof obj[key] == 'string') {
console.log(key + ':' + obj[key]);
} else {
console.log(key + ' recursive');
print(obj[key]);
}
}
}
var text = '[ { "_id" : { "$oid" : "54426dbfe4b0a1df0eb4a0f6"} , "user" : "fran" , "fecha" : "18/10/2014" , "time" : "7"} , { "_id" : { "$oid" : "54426efae4b00975f860fc06"} , "user" : "elle" , "fecha" : "18/10/2014" , "time" : "9" , "w" : { "w1" : "dog, dok" , "w2" : "cat, kat", "w3" : "pork, porc"}} ]';
var myObj = JSON.parse(text);
print(myObj);
這是您的JSFIDDLE 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.