语法
array.reduce(function(prevValue, currentValue, currentIndex, arr), initialValue)
参数 | 描述 |
prevValue | 必需。上一个值, 或者计算结束后的返回值。 |
currentValue | 必需。当前元素 |
currentIndex | 可选。当前元素的索引 |
arr | 可选。当前元素所属的数组对象。 |
initialValue | 可选。传递给函数的初始值 |
示例:累加计算
let list = [1, 2, 3, 5];
let result = list.reduce((prevValue, currentValue)=>{
return prevValue + currentValue;
}, 0);
console.log(result);
// 11
示例:合并数组
let list = [[1, 2, 3], [], [8, 9]];
let result = list.reduce((prevArr, currentArr)=>{
return prevArr.concat(currentArr);
}, []);
console.log(result);
// [ 1, 2, 3, 8, 9 ]
参考
https://www.runoob.com/jsref/jsref-reduce.html