js数组处理--循环过滤树形数组

源代码:

 1 // 循环过滤树形数组
 2     filterArrForKey({ arr, key, value }) {
 3         let newArr = []
 4         newArr = arr.map(item => {
 5             if (item.children && item.children != null) {
 6                 item = {
 7                     ...item,
 8                     children: this.filterArrForKey({
 9                         arr: item.children,
10                         key,
11                         value
12                     })
13                 }
14             }
15             if (item[key] != value) {
16                 return item
17             } else {
18                 return null
19             }
20         })
21         newArr = newArr.filter(item => item != null)
22         return newArr
23     },

参数解析:{ arr: 待处理数组 key: 过滤依据字段名 value: 要过滤的key的值 }

左手键盘安天下,右手鼠标定乾坤
原文地址:https://www.cnblogs.com/alt-fsh/p/14431590.html