在平时的工作中遇到了查找树形结构中特定的一条数据的这个问题,我的解决方法是写一个深度优先遍历脚本遍历这个树形结构,把遍历到的数据全部放到一个数组中,然后对比一下目标数据找到对应的那条数据。
深度优先遍历脚本代码:
function deep(n,arr){
console.log(n.label,"深度优先遍历")
arr.push(n);
if(n.children){
for(let i = 0;i < n.children.length;i++){
deep(n.children[i],arr);
}
}
}
数据结构:
[{id:"001",label:"一单元",children:[{id:"003",label:"三单元",children:[]}{}]},{id:"002",label:"二单元",children:[{}{}]}]