手写reduce函数,处理好callback函数的传参以及init值,极短,面试前必看系列

45 阅读1分钟

重写reduce函数,重点在于最开始init值的选取,以及记得传递callback函数的四个参数 在这里插入图片描述

Array.prototype._myReduce = function(callBack, init) {
  let arr = this;
  let result = init ? init : arr[0];

  for (let i = 1; i < arr.length; i++) {
    result = callBack(result ,arr[i], i, arr);
  }
  return result;
}