var list = [{
"id": "0",
"name": "Session",
"type": 1,
"children": [{
"id": "47",
"name": "文件夹1",
"parentId": 0,
"resourceId": 0,
"description": "",
"type": "0",
"children": [{
"id": "44",
"name": "192.168.3.144",
"parentId": 47,
"resourceId": 44,
"description": "",
"type": "1",
"children": []
}]
}, {
"id": "48",
"name": "文件夹2",
"parentId": 0,
"resourceId": 0,
"description": "",
"type": "0",
"children": [{
"id": "50",
"name": "192.168.3.143",
"parentId": 48,
"resourceId": 45,
"description": "",
"type": "1",
"children": []
}]
}, {
"id": "49",
"name": "文件夹3",
"parentId": 0,
"resourceId": 0,
"description": "",
"type": "0",
"children": [{
"id": "51",
"name": "192.168.3.145",
"parentId": 49,
"resourceId": 46,
"description": "",
"type": "1",
"children": []
}, {
"id": "52",
"name": "ceshi",
"parentId": 49,
"resourceId": 47,
"description": "",
"type": "1",
"children": []
}, {
"id": "53",
"name": "文件夹3-1",
"parentId": 49,
"resourceId": 0,
"description": "",
"type": "0",
"children": [{
"id": "55",
"name": "ceshi3-1",
"parentId": 53,
"resourceId": 48,
"description": "",
"type": "1",
"children": []
}]
}, {
"id": "54",
"name": "文件夹3-2",
"parentId": 49,
"resourceId": 0,
"description": "",
"type": "0",
"children": []
}]
}]
}, {
"id": "47",
"name": "文件夹1",
"parentId": 0,
"resourceId": 0,
"description": "",
"type": "0",
"children": [{
"id": "44",
"name": "192.168.3.144",
"parentId": 47,
"resourceId": 44,
"description": "",
"type": "1",
"children": []
}]
}, {
"id": "44",
"name": "192.168.3.144",
"parentId": 47,
"resourceId": 44,
"description": "",
"type": "1",
"children": []
}, {
"id": "48",
"name": "文件夹2",
"parentId": 0,
"resourceId": 0,
"description": "",
"type": "0",
"children": [{
"id": "50",
"name": "192.168.3.143",
"parentId": 48,
"resourceId": 45,
"description": "",
"type": "1",
"children": []
}]
}, {
"id": "50",
"name": "192.168.3.143",
"parentId": 48,
"resourceId": 45,
"description": "",
"type": "1",
"children": []
}, {
"id": "49",
"name": "文件夹3",
"parentId": 0,
"resourceId": 0,
"description": "",
"type": "0",
"children": [{
"id": "51",
"name": "192.168.3.145",
"parentId": 49,
"resourceId": 46,
"description": "",
"type": "1",
"children": []
}, {
"id": "52",
"name": "ceshi",
"parentId": 49,
"resourceId": 47,
"description": "",
"type": "1",
"children": []
}, {
"id": "53",
"name": "文件夹3-1",
"parentId": 49,
"resourceId": 0,
"description": "",
"type": "0",
"children": [{
"id": "55",
"name": "ceshi3-1",
"parentId": 53,
"resourceId": 48,
"description": "",
"type": "1",
"children": []
}]
}, {
"id": "54",
"name": "文件夹3-2",
"parentId": 49,
"resourceId": 0,
"description": "",
"type": "0",
"children": []
}]
}, {
"id": "51",
"name": "192.168.3.145",
"parentId": 49,
"resourceId": 46,
"description": "",
"type": "1",
"children": []
}, {
"id": "52",
"name": "ceshi",
"parentId": 49,
"resourceId": 47,
"description": "",
"type": "1",
"children": []
}, {
"id": "53",
"name": "文件夹3-1",
"parentId": 49,
"resourceId": 0,
"description": "",
"type": "0",
"children": [{
"id": "55",
"name": "ceshi3-1",
"parentId": 53,
"resourceId": 48,
"description": "",
"type": "1",
"children": []
}]
}, {
"id": "55",
"name": "ceshi3-1",
"parentId": 53,
"resourceId": 48,
"description": "",
"type": "1",
"children": []
}, {
"id": "54",
"name": "文件夹3-2",
"parentId": 49,
"resourceId": 0,
"description": "",
"type": "0",
"children": []
}]
js如何遍历不规则多维数组,去除type=0的部分,并返回新的数组,求指导
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- 峰子哥哥 2021-09-09 09:50关注
console.log(list); //剔除无子节点并且type==0的 只取type==1或者有子节点的 getList(list); //删除type==0的,包括其下的子节点,只保留type==1的 // removeList(list); console.log(list); function getList(list) { for (let i = 0; i < list.length; i++) { let item = list[i]; if (item.children && item.children.length > 0) { getList(item.children); } if (item.type === "0" && (!item.children || item.children.length === 0)) { list.splice(i, 1); i--; } } } function removeList(list) { for (let i = 0; i < list.length; i++) { let item = list[i]; if (item.children && item.children.length > 0) { removeList(item.children); } if (item.type === "0") { list.splice(i, 1); i--; } } }
提供了两种场景的解决方案,如果能帮到你,望【采纳】
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 fluent的在模拟压强时使用希望得到一些建议
- ¥15 STM32驱动继电器
- ¥15 Windows server update services
- ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
- ¥15 模糊pid与pid仿真结果几乎一样
- ¥15 java的GUI的运用
- ¥15 Web.config连不上数据库
- ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
- ¥15 怎么配置广告联盟瀑布流
- ¥15 Rstudio 保存代码闪退