我想在这个嵌套数组rewriteArr中过滤出含有pagepermission这个属性的对象,最后返回一个新数组
我想要达到的结果:
有谁知道的吗!求解!
有谁知道的吗!求解!
let rewriteArr = [
{
id: 1,
label: '首页',
pagepermisson: 1,
children: [
{
id: 2,
label: '首页2',
}
]
},
{
id: 3,
label: '首页3',
pagepermisson: 1,
children: [
{
id: 4,
label: '首页4',
pagepermisson: 1,
},
{
id: 5,
label: '首页5',
}
]
}
]
function filterArr(data, arr = []) {
data.map(item => {
if(item.pagepermisson) {
arr.push({id: item.id, label: item.label, pagepermisson: item.pagepermisson})
}
if(item.children && item.children.length) {
filterArr(item.children, arr)
}
})
return arr;
}
console.log(filterArr(rewriteArr)) // [{"id":1,"label":"首页","pagepermisson":1},{"id":3,"label":"首页3","pagepermisson":1},{"id":4,"label":"首页4","pagepermisson":1}]