• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
倪殤
博客园    首页    新随笔    联系   管理    订阅  订阅

自学前端开发:模拟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);

posted @ 2017-05-04 13:20  倪殤  阅读(124)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3