Fork me on GitHub

reduce函数

1、reduce里回调函数的四个参数

  1. prev 上一个、next下一个、index索引、item原数组
  2. 函数返回叠加后的结果,不影响原数组

2、reduce求和

let arr = [1,2,3,4,5,6,7]
let sum = arr.reduce(function(prev,next,index,item){
     console.log(arguments)
    //return 100; //本次的返回值会作为下一次的上一次返回结果
    //reduce求和
    return prev+next;
  })

3、reduce求乘积

let sum2 = [{“price”:40,”count”:2},{“price”:40,”count”:4}]
     sum2.reduce(function(prev,next,index,item){
     return prev+next.price*next.count
   },0) //0默认指定第一次的prev
console.log(sum2)

4、reduce多维数组转一维数组

let sum3= [[1,2,3],[4,5,6],[7,8,9]].reduce(function(prev,next,index,item){
    return prev.concat(next) //concat 数组拼接
  })
console.log(sum3)


-------------本文结束感谢您的阅读-------------