Javascript 访问JSON中的嵌套数组对象和值
我有以下JSON结构,需要迭代data.list的嵌套值。当我使用下面的Javascript 访问JSON中的嵌套数组对象和值,javascript,json,Javascript,Json,我有以下JSON结构,需要迭代data.list的嵌套值。当我使用下面的console.log(数据[“list”][0][“我的网站是https://www.test.com“][0][0]。命令),但当我尝试迭代data.list的所有对象时,情况并非如此 var data = { "list": [ { "The first website is https://www.w3.org/": [ [
console.log(数据[“list”][0][“我的网站是https://www.test.com“][0][0]。命令)代码>,但当我尝试迭代data.list的所有对象时,情况并非如此
var data = {
"list": [
{
"The first website is https://www.w3.org/": [
[
{
"command": "This is dummy content",
"new": false,
"message": "This was fun to make"
}
]
]
},
{
"The second website is https://www.mozilla.org": [
[
{
"command": "This is the second command",
"new": true,
"message": "Lorem ipsum"
}
]
]
}
],
"verified": false
};
for (var i = 0; i < data.list.length; i++) {
// this doesn't work
console.log(data.list[i][0]["0"]["0"]).command;
}
var数据={
“名单”:[
{
“第一个网站是https://www.w3.org/": [
[
{
“命令”:“这是虚拟内容”,
“新”:假,
“信息”:“这很有趣”
}
]
]
},
{
“第二个网站是https://www.mozilla.org": [
[
{
“命令”:“这是第二个命令”,
“新”:没错,
“信息”:“Lorem ipsum”
}
]
]
}
],
“已验证”:错误
};
对于(var i=0;i
您可以使用对象中的第一个键
var data={list:[{”第一个网站是https://www.w3.org/“:[{command:“这是虚拟内容”,新建:false,消息:“这很有趣”}]},{”第二个网站是https://www.mozilla.org“:[{command:“这是第二个命令”,新建:true,消息:“Lorem ipsum”}]},验证:false},
我
对于(i=0;i }
因为列表中的项目是在单独循环中迭代的对象。另外,您必须考虑到它是一个对象,所以您应该使用object属性作为索引,而不是整数
以下各项应起作用:
for (var i = 0; i < data.list.length; i++) {
// this doesn't work
for (var property in data.list[i]) {
console.log(data.list[i][property][0][0].command);
}
}
for(变量i=0;i
是否有错误?为什么要将属性设置为任意字符串?你真的需要重新考虑你的模式。你的json非常奇怪,你每次都有一个1元素数组的1元素数组?你更喜欢实现更通用的解决方案还是只针对你的数组?