reduce学习笔记
reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终为一个值,是es5新增的一个数组逐项处理的方法。 语法: arr.reduce(callback(accumulator, currentValue[, index[, array]])[, initialValue]) callback:执行数组中每个值的函数,包含四个参数 accumulator:累计器,累计回调的返回值。如何有设置initialValue,则该值为初始值,否则以数组的第一个元素作为初始值。所以,正在没有设置initialValue的空数组上调用reduce将报错 currentValue:当前正在处理的数组元素 currentIndex:当前正在处理的数组元素的索引 - 可选 array:调用reduce方法的数组 - 可选 initialValue:初始值 - 可选 注意:reduce对于空数组是不会执行callback的 下面通过栗子来验证一下: 1、首先验证一下空数组 const arr1 = [ ] arr1 . reduce ( ( a , b , c , d ) => { console . log ( 'a: ' + a , 'b: ' + b , 'c: ' + c , 'd : d ) } ) 对于一个空数组,并且没有给初始值的情况下