// 创建一个值相同的数组
Array(...Array(12)).map(o => o || 0);
// 递归获得所有status为0的树数据
filterStatus (arr) {
return arr.forEach(o => {
o.status && o.child && (o.child = this.filterStatus(o.child));
return status;
})
}
/**
* 递归过滤嵌套数组(树形结构)
* @param arr {Array}要过滤的原始数据
* @param type {Boolean} 你要过滤的关键词
*
*/
recursiveFilter (arr, type) {
let data=arr.filter(item=> item.type === type).map((item)=>{
item=Object.assign({},item)
if(item.children){
//递归循环
item.children=that.recursiveFilter(item.children, type)
}
return item
})
return data
}
console