实现数组累加功能:
- 语法:array.reduce(function(total, currentValue, currentIndex, arr), initialValue)
total:必须,初始值,或者每次计算完成的返回值。
currentValue: 必须,当前的值。
currentIndex:可选。当前元素的索引。
arr: 可选。当前元素所属的数组对象。
initialValue: 初始值,比如:若给定initialValue则以下例子执行过程为initialValue+1+2+3+4 - 使用:
var numbers = [1, 2, 3, 4]; function getSum(total, currentValue, currentIndex, arr) { return total + currentValue; } console.log('sum:'+numbers.reduce(getSum, 5));// 输出sum:1
- 理解:
计算的逻辑写在getSum方法里面。
用箭头函数的简单写法:var numbers2 = []; console.log('sum2:'+ numbers.reduce((total, currentValue, currentIndex, arr)=>{ return total + currentValue; }, 5));// 输出sum2:1