首页 > 代码库 > 自学前端开发:模拟Array功能 不是扩展子类
自学前端开发:模拟Array功能 不是扩展子类
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功能 不是扩展子类