先看源码
Array.prototype.myReduce = function(callback,initValue){
//设置长度
var len = this.length
//初始化pre
var pre = initValue
var i=0;
//判断initValue有没有,没有的话就从第一个开始
if(initValue==null){
pre=this[0]
i=1
}
//循环,调用函数
for(i;i<len;i++){
pre = fn(pre,this[i],i)
}
return pre
}
isArray源码
Array.prototype.isArray = function (array){
return Object.prototype.toString.call(Object(array))==='[Object array]'
}