高程 原型(笔记)

1、原型的动态性

重新原型后切断了 现有原型与任何之前实例对象之间的关系;它引用的还是之前的原型

function Person(){};

 person1 = new Person();

  Person.prototype = {

          name: 'Larmber',

          sayName: function(){

                    console.log(this.name)

           }

  }

person1.sayName()  //报错  因为指向的还是之前的原型

2、原型链

function SubperType(){

    this.color = ["red","green"];

}

function SubType(){};

SubType.prototype = new SubperType();

var a = new SubType();

a.color.push("red");

var b = new SubType();

console.log(b.color);  //red, green red

原型链问题: 实例共享 引用类型值

2、借用构造函数

使用  apply  / call

修改以上代码:

function SubType(){

    SubperType.apply(this)

}

借用构造函数问题: 方法都在函数中,所以无法复用

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容