1. 程式人生 > >自學前端開發:模擬Array功能 不是擴展子類

自學前端開發:模擬Array功能 不是擴展子類

自學 下使用 .cn 解決 shift this var 擴展 method

function MyArray(){};//創建模擬數組功能的構造函數

MyArray.prototype.length=0;//解決IE下使用擴展子類 數組length的bug

(function(){

var methods=[‘push‘,‘pop‘,‘shift‘,‘unshift‘,‘slice‘,‘splice‘,‘join‘];

for(var i=0;i<methods.length;i++){

(function(name){

MyArray.prototype[name]=function(){

return Array.prototype[name].apply(this,arguments);

};

})(methods[i]);//根據傳進來的methods值 來繼承Array

}

})();

var mine=new MyArray();

mine.push(1,2,3,4);

console.log(mine.length);

技術分享

自學前端開發:模擬Array功能 不是擴展子類