js两种实现数据扁平化的方式

88 阅读1分钟

let arr = [ { name:'张三', children:[ { sex:'男' } ] }, { name:'李四', children:[ { sex:'女' } ] }, { name:'王五', children:[ { sex:'男' }, { sex:'女' } ] } ]

上方是接口返回的数据格式,当我们需要获取输出全部的children内容时。

方式一,使用数组的循环遍历

let twoarr = [] arr.forEach((item)=>{ const {children} = item children.forEach((chi)=>{ twoarr.push({ sex:chi.sex }) }) }) twoarr.forEach((item)=>{ console.log(item.sex); })

方式二,使用flat方法

注释:flat()方法 方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回。

let allarr = [] arr.map((item)=>{ allarr.push(item.children) }) allarr.flat().forEach((item)=>{ console.log(item.sex); })