var numbers = [3, 5, 7, 2];
var sum = numbers.reduce((x, y) => x + y);
console.log(sum); // returns 17

reduce方法有两个参数,第一个是回调函数callback,用于处理数据,可以自定义一个function,然后传给reduce,第二个是初始值(可选),不传则从数组第一个元素开始,否则首先处理初始值

array.reduce(callback(),initialValue);

var numbers = [3, 5, 7, 2];
var sum = numbers.reduce((x, y) => x + y,10);
console.log(sum); // returns 27

callback()方法可传入四个参数,

arr.reduce(callback[accumulator, currentValue, currentIndex, array], initialValue)

accumulator为累加器,用来存放上一次迭代的结果,初始值为数组第一个元素或者initialValue(若有);
currentValue为当前待处理的元素;

currentIndex为当前待处理的元素索引;

array为调用reduce方法的数组;

 

posted on 2021-07-08 15:23  巍MG  阅读(113)  评论(0)    收藏  举报