Javascript 读取嵌套对象
我有一个这样的物体Javascript 读取嵌套对象,javascript,Javascript,我有一个这样的物体 var JSON_Object = { "Diabites": [ { "Day1": [ { "Breakfast": [ { "food1": "Bread", "food2": "Tea", "food3":
var JSON_Object = {
"Diabites": [
{
"Day1": [
{
"Breakfast": [
{
"food1": "Bread",
"food2": "Tea",
"food3": "Edd"
}
]
},
{
"Lunch": [
{
"food1": "Bread",
"food2": "Tea",
"food3": "Edd"
}
]
},
{
"Dinner": [
{
"food1": "Bread",
"food2": "Tea",
"food3": "Edd"
}
]
}
]
},
{
"Day2": [
{
"Breakfast": [
{
"food1": "Bread",
"food2": "Tea",
"food3": "Edd"
}
]
},
{
"Lunch": [
{
"food1": "Bread",
"food2": "Tea",
"food3": "Edd"
}
]
},
{
"Dinner": [
{
"food1": "Bread",
"food2": "Tea",
"food3": "Edd"
}
]
}
]
}
]
}
现在,我如何使用一些循环来打印这个文件。我尝试了以下方法
alert(JSON_Object.Diabites.length); // Return 1
alert(JSON_Object.Diabites[0].Day1.length); // Return 3
但是有不同的名称,如Day1、Day2、Day3….
,因此我如何更改循环中的该部分,如
for(var i=0; i<JSON_Object.Diabites.length;i++)
{
alert(JSON_Object.Diabites[i].Day1.length);
}
如果您想循环json的键,可以执行以下操作
for(var key in JSON_Object.Diabites[0]){
//key will be Day1,Day2 etc.
alert(JSON_Object.Diabites[0][key].length);
}
但在共享的json结构中,必须使用
for(var i=0;i<JSON_Object.Diabites.length;i++) {
for(var key in JSON_Object.Diabites[i]) {
//key will be Day1,Day2 etc.
alert(key);
alert(JSON_Object.Diabites[i][key].length);
}
}
for(var i=0;i可能与和重复。请注意,问题与JSON无关。问题在于如何在JavaScript中处理数组/对象。如何获得数据(例如,通过JSON)与问题无关。嘿,这很有帮助,但我之前在json对象中犯了一个小错误,现在我更新了我的问题。你能再看一下吗?
for(var i=0;i<JSON_Object.Diabites.length;i++) {
for(var key in JSON_Object.Diabites[i]) {
//key will be Day1,Day2 etc.
alert(key);
alert(JSON_Object.Diabites[i][key].length);
}
}