forEach和sort的实现 发表于 2019-03-16 | 分类于 JavaScript 看了数组的一些源码,总结了规律,典型的forEach和sort的实现,基本上其他ES5数组的方法实现也是照葫芦画瓢 forEach12345678910Array.prototype.myForEach = function(fn){ var len = this.length; for(var i = 0; i < len; i ++){ //将元素传给回调函数 fn(this[i],i); }}arr.myForEach(function (ele, index){ console.log(ele, index);}) sort原理1234567891011121314var arr = [1, 2, 3, 4, 5]Array.prototype.myMap = function(fn){ var len = this.length; //创建新数组 var arr = []; for(var i = 0; i < len; i ++){ arr.push(fn(this[i],i)) } return arr;}var aa = arr.myMap(function(ele, index){ return ele * 2;})console.log(aa);