首页 > 其他 > 详细

自学前端开发:模拟Array功能 不是扩展子类

时间:2017-05-04 14:11:11      阅读:278      评论:0      收藏:0      [点我收藏+]

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功能 不是扩展子类

原文:http://www.cnblogs.com/xsns/p/6806576.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!