Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/474.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为嵌套json运行for-each循环_Javascript_Jquery_Json_Object_Foreach - Fatal编程技术网

Javascript 为嵌套json运行for-each循环

Javascript 为嵌套json运行for-each循环,javascript,jquery,json,object,foreach,Javascript,Jquery,Json,Object,Foreach,基本上我有一个JSON对象。您可以在我提供的图片中看到它的属性,现在我一直在尝试为每个特定的lvl编写一个 $.each(toSort.items.items.items.items.items, function (index, value) { console.log(index); }); 所以我想要的是一个嵌套在第5层的循环,运行代码。所以我想知道的是,为什么上面的代码无效?因为items总是一个数组,您必须引用这个数组中的某个索引。如果你想得到一个项目,你必须使用索引 toS

基本上我有一个JSON对象。您可以在我提供的图片中看到它的属性,现在我一直在尝试为每个特定的lvl编写一个

$.each(toSort.items.items.items.items.items, function (index, value) {
    console.log(index);
});

所以我想要的是一个嵌套在第5层的循环,运行代码。所以我想知道的是,为什么上面的代码无效?

因为items总是一个数组,您必须引用这个数组中的某个索引。如果你想得到一个项目,你必须使用索引

toSort[0].items[0].items[0] //third level
如果希望所有值都来自该数组,最好使用多个循环。此外,
for()
比jQuery的
each()
快得多

for(变量i=0;i

第5层之前的每一层中的项也是数组,因此要访问第一层中的项数组,您需要指定一个索引,通过执行toSort.Items.Items,第二个项被视为一个不存在的属性来访问,要访问第一个项数组中的第二个项数组,您必须以toSort.Items[0]的身份访问它.项目等

后续访问的一个示例可能是

toSort.items[0].items[0].items[0].items[0].items[0]
toSort.items[0].items[0].items[0].items[0].items[1]
toSort.items[0].items[0].items[0].items[0].items[2]
...
toSort.items[0].items[0].items[0].items[1].items[0]
toSort.items[0].items[0].items[0].items[1].items[1]
toSort.items[0].items[0].items[0].items[1].items[2]
...
...
...
toSort.items[1].items[1].items[1].items[1].items[0]
toSort.items[1].items[1].items[1].items[1].items[1]
toSort.items[1].items[1].items[1].items[1].items[2]

看起来它可以用于一些递归,不是吗?

查看对象每一层旁边的数据类型。您必须根据每一层的类型对其进行寻址。不能逐点寻址数组,必须使用索引。
toSort.items[0].items[0].items[0].items[0].items[0]
toSort.items[0].items[0].items[0].items[0].items[1]
toSort.items[0].items[0].items[0].items[0].items[2]
...
toSort.items[0].items[0].items[0].items[1].items[0]
toSort.items[0].items[0].items[0].items[1].items[1]
toSort.items[0].items[0].items[0].items[1].items[2]
...
...
...
toSort.items[1].items[1].items[1].items[1].items[0]
toSort.items[1].items[1].items[1].items[1].items[1]
toSort.items[1].items[1].items[1].items[1].items[2]