JavaScript 数组 reduce方法
由于在工作中常用到方法如map、forEach、filter等等已经很熟悉了,对于reduce很多时候会忘记它的使用、以及在独特的运用场景下提高开发效率。
简介
reduce接收一个函数作为累计器,对数组中每一个元素(从左到右)执行该函数,并将其结果汇总为单个值返回。 注:对于空数组不执行累计器
参数
- callback 累计器
- intValue 初始值
callback参数
- total 每次累计后的值,第一次为初始值initValue
- currentValue 单前待操作的值,由原数组从左到右依次传递
- currentIndex 单前待操作项下标
- arr 当前操作的数组对象
兼容性
使用 1.累加累乘
let arr = [1, 2, 3]
function getSum (total, current) {
return total + current
}
let res = arr.reduce(getSum, 0)
console.log(res) // 6