reduce() 方法对数组中的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为单个返回值。
Array.prototype.reduce= function(callback, initValue){
var arr = this;
// 用户是否传入初始值
var sum = initValue || 0;
for(let i = 0; i < arr.length; i++){
sum = callback(arr[i], sum, i);
}
return sum;
}
// 测试
var testArr = [1,2,3,4,5];
var value = testArr.reduce((value, item) => item + value, 3);
console.log(value)
这个函数相比之前我提到的数组函数有了一点难度,如有错漏,请评论指出。