数据结构:
//封装方法
//树形结构遍历
recursionFindObj(data, id) {
var result = null;
if (!data) {
// return; 中断执行
return;
}
for (let i in data) {
// 已经找到了属性值所在的对象就终止循环,以免后面的循环覆盖result,导致出错
if (result !== null) {
break;
}
var item = data[i];
if (item.id == id) {
result = item;
break;
} else if (item.children) {
result = recursionFindObj(item.children, id);
}
}
return result;
}
方法调用:
const childArr= (this.recursionFindObj(res.date, id) || []).child;