通过id、name递归选中子节点

//通过id找节点
function findId(Arr, ID) {
var _result = null;
for (let i = 0; i < Arr.length; i++) {
//console.log(Arr[i], Arr[i].id == ID)
if (Arr[i].Id == ID) return Arr[i];
if (Arr[i].children) _result = findId(Arr[i].children, ID)
if (_result != null) return _result;
}
return _result
}

//通过name找节点
var returnedItem = []; //定义一个空数组
function find(arr, name) {
//利用foreach循环遍历
arr.forEach((item) => {
//判断递归结束条件
if (item.label == name) {
// 存储数据到空数组
returnedItem = item;
} else if (item.children != null) //判断chlidren是否有数据
{
//递归调用
find(item.children, name);
}
})
return returnedItem;
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容