【发布时间】:2018-12-13 11:32:45
【问题描述】:
我有一个需要迭代的 json 对象,我可以将迭代作为一个函数使用,但想看看是否有更简单的方法。 对象如下图:
obj = [
{
name: 'FolderA',
child: [
{
name: 'FolderB',
child: [
{
name: 'FolderC0',
child: [],
},
{
name: 'FolderC1',
child: [],
}
]
}
],
},
{
name: 'FolderM'
child: []
}
]
在某些事件中我会升级,例如
level = "0-0-1"
我拆分得到 [0, 0, 1] 含义,第 0 个索引,嵌套的第 0 个索引和进一步嵌套的第 1 个索引,我得到这样的:
obj[0][0][1],
但由于嵌套结构深度未知,我希望动态生成上述内容,如下所示:
obj + [0] + .children[0] + .children[1],
不确定这是否可以做到,但如果有,请告诉我,否则我将不得不使用递归函数。谢谢
【问题讨论】:
-
你应该使用递归迭代嵌套对象。
-
旁注:JSON 是对象的字符串表示形式。你所拥有的是对象本身,而不是它的字符串表示。所以请说“object”而不是“json object”;不要用
json标记它。
标签: javascript json iteration