循環我的JSON數據:問題通過JSON數據在Javascript
var menu = {"parent":[
{
"id": 1,
"name": "Information",
"child": [
{
"id": 1000,
"name": "Example"
}
]
},
{
"id": 2,
"name": "Something"
},
{
"id": 3,
"name": "Something else",
"child": [
{
"id": 2000,
"name": "Yay"
}
]
}
我的javascript:
$(document).ready(function() {
var xhr = new XMLHttpRequest();
xhr.open("GET", "https://sable-belief-1704.justapis.io/parentmenu", false);
xhr.send();
var responseJson = JSON.parse(xhr.response);
var responseParent = responseJson.parent;
for(var i in responseParent) {
if (responseParent[i].hasOwnProperty('child'))
{
console.log(responseParent[i]);
console.log(responseParent[i].child[i]);
}
}
});
我在這裏難住了。此代碼適用於具有子對象的第一個對象。但是當它循環到具有子對象的第二個對象時,它將運行第一個console.log,我可以看到帶有子對象的父對象,但出於某種奇怪的原因,在第二個console.log中,我試圖記錄子對象時,它只會返回undefined。對我來說這似乎很奇怪,因爲考慮到當我登錄父對象時子對象就在那兒。
下面是一個的jsfiddle可以運行,看看我的意思是:https://jsfiddle.net/4rcy66r7/
任何想法?
爲什麼你正在使用同步請求?爲什麼不[[.getJSON()'](http://api.jquery.com/jquery.getjson/)? – Andreas