实现代码:
// data是根节点对象,对象有children数组,children里的节点可能还有更多级的children
const findData = (targetId, data) => {
if (data.id === targetId) return data
if (Array.isArray(data.children)) {
for (let i = 0, l = data.children.length; i < l; i++) {
let target = findData(targetId, data.children[i])
if (target) return target
}
}
return undefined
}
记录于2022-2-17