Array.prototype.reduce = function (fn, val) {
const arr = this;
let accumulator, currentValue, currentIndex;
if (val) {
accumulator = val;
currentIndex = 0;
} else {
accumulator = arr[0];
currentIndex = 1;
}
while (currentIndex < arr.length) {
if (Object.prototype.hasOwnProperty.call(arr, currentIndex)) {
currentValue = arr[currentIndex];
accumulator = fn(accumulator, currentValue, currentIndex, arr);
}
currentIndex++;
}
return accumulator;
};
在javascript中,reduce的实现原理
于 2022-09-02 09:28:55 首次发布