loading...

0

2.对象冒充(借助构造函数)

javascript读完大概需要2分钟

  • 发布时间:2017-07-26 15:34 星期三
  • 刘伟波
  • 181
  • 更新于2017-07-26 15:34 星期三

对象冒充(借助构造函数)

当原型中存在引用类型,存在数据被修改的问题
对象冒充存在的问题,不能使用原型,所以就不能不能实现数据共享

    <script>
    function Test(age) {
        this.family=["妈妈","爸爸"];
        this.age=age;
    }
    function Until() {}
    Until.prototype=new Test(22);
    var u1=new Until();
    u1.family.push("姐姐");
    console.log(u1.family);//["妈妈", "爸爸", "姐姐"]
    var u2=new Until();
    console.log(u2.family);//["妈妈", "爸爸", "姐姐"]
    //1.当原型中存在引用类型,存在数据被修改的问题
    //2.子类类型的对象无法给父类传参数


    function Test(age) {
        this.family=["妈妈","爸爸"];
        this.age=age;
    }
    function Until(age) {
        Test.apply(this,arguments)
    }
    var u1=new Until(24);
    u1.family.push("姐姐");
    console.log(u1.family);
    console.log(u1.age);
    var u2=new Until(23);
    console.log(u2.family);
    console.log(u2.age);

    </script>


你可能感兴趣的文章

    发表评论

    评论支持markdown,评论内容不能超过500字符,如果内容过多或者要及时回复,建议去 平台,一般一天之内就会回复。
    关于技术问题或者有啥不懂的都可以留言,我会定期回复答 疑,推荐最新仓库 前端知识体系, 感謝支持!