reduce()用法-抽出共同项

 
    reduceFun(){
      // array.reduce(fun(arr,cur),init)  arr:初始值, 或者计算结束后的返回值;cur:当前项;
      // let arr2=[1,23,5,6]
      // let arr3=[[12,4],[23,6]]
      let arr4=[{children:[{a:1,c:3},{a:2,d:4}]},{children:[{a:4,e:8},{a:5,f:7}]}]
      //  return arr2.reduce((arr,cur)=> arr+cur,0) // 计算数组每项相加总和 结果 35
      // return arr3.reduce((arr,cur)=>[...arr,...cur],[]) // 将嵌套数组拆开成一个大数组 结果[12,4,23,6]
      return arr4.reduce((arr,cur)=>[...arr,...cur.children.map(child=>{return child.a})],[]) // 数组中的每项都含有的项抽出来放在一个数组,[1,2,4,5]
    }

 

posted @ 2020-02-17 14:56  银耳钉  阅读(157)  评论(0编辑  收藏  举报