递归判断是否符合条件然后把符合条件的返回,这样写有没有问题,有没有更好的方法,期望各位大佬给点建议0.0
function dg(obj, arr) {
for (let item of obj) {
if (item.key == '2') {
arr.push(item)
if (item.children) {
arr.concat(dg(item.children, arr))
}
} else if (item.children) {
arr.concat(dg(item.children, arr))
}
}
return arr
}
var data = [ { key: '1', a: '2', children: [ { key: '2', a: 3 }, { key: '3', a: '2' } ]
}, {
key: '2',
a: 2
}, {
key: '2',
a: 2
},
{ key: '2', a: 3 },
]
let r = dg(data, [])
console.log(r)