87,904
社区成员
发帖
与我相关
我的任务
分享
var nodes = [
{"id":9,"title":"第一级","parentid":null},
{"id":2,"title":"第二级","parentid":1},
{"id":3,"title":"第二级","parentid":1},
{"id":4,"title":"第二级","parentid":1},
{"id":5,"title":"第二级","parentid":2},
{"id":6,"title":"第三级","parentid":3},
{"id":7,"title":"第三级","parentid":4},
{"id":8,"title":"第三级","parentid":3}
];
var arr = [];
function ct(id){
for (var i = 0; i < nodes.length; i++){
if(nodes[i].parentid==id){
arr.push(nodes[i]);
ct(nodes[i].id);
}
}
}
iFor: for (var i = 0; i < nodes.length; i++){
for (var j = 0; j < arr.length; j++)
if (nodes[i].parentid==nodes[j].id)
continue iFor;
arr.push(nodes[i]);
ct(nodes[i].id);
}
console.table(arr);