const data = [{
id: '1',
name: 'test1',
children: [
{
id: '11',
name: 'test11',
children: [
{
id: '111',
name: 'test111'
},
{
id: '112',
name: 'test112'
}
]
},
{
id: '12',
name: 'test12',
children: [
{
id: '121',
name: 'test121'
},
{
id: '122',
name: 'test122'
}
]
}
]
}]
function find (value) {
let find = false
const buffer = []
let res = []
check(data)
function check (arr) {
if (find) return
arr.forEach(a => {
if (a.id === value) {
find = true
buffer.push(a.id)
res = buffer.slice()
} else {
if (a.children && a.children.length > 0) {
buffer.push(a.id)
check(a.children)
buffer.pop()
}
}
})
}
return res
}
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 981909093@qq.com
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 981909093@qq.com
文章标题:
文章字数:86
本文作者:泽鹿
发布时间:2019-07-31, 19:05:14
最后更新:2019-07-31, 19:19:15
原始链接:http://panyifei.github.io/2019/07/31/前端面试/代码/链表/找到父级id/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。