引用
const data = [
{
name: 'dir1',
dir: [
{
name: 'dir1_inner',
dir: []
}
]
},
{
name: 'dir2',
dir: [
{
name: 'dir1_inner',
dir: []
},
{
name: 'dir3_inner',
dir: []
},
{
name: 'dir4_inner',
dir: []
},
]
},
{
name: 'dir3',
dir: [
{
name: 'dir1_inner',
dir: []
},
{
name: 'dir3_inner',
dir: []
}
]
},
]
const allowed = ['dir1', 'dir2', 'dir3']
const allowedInner = ['dir3_inner']
const accesses = []
allowed.map( allow => {
accesses.push(...data.filter(data => !data.name.search(allow) ))
})
console.log(accesses)
accesses数组应该包含子对象相等的对象{name: 'dir3_inner'}
孩子们自己应该保持作为一个完整的对象{name: 'dir3_inner'}
data = [
{
name: 'dir2',
dir: [
{
name: 'dir3_inner',
dir: []
}
]
},
{
name: 'dir3',
dir: [
{
name: 'dir3_inner',
dir: []
}
]
}
]
2 个回答