1 原型/原型链
1-1 原型
-
定义:原型是function对象的一个属性,定义了构造函数制造出的对象的公共祖先。通过该构造函数产生的对象,可以继承该原型的属性和方法。
-
原型是一个对象。
-
可以利用原型的特性,提取共有属性。
-
对象属性与在原型上属性的增删改查。
-
对象如何查看原型 -> 隐式属性 __proto__
-
对象如何查看构造函数 -> constructor
1-2 原型链
-
原型链的构成(继承方法)。
-
原型链与原型属性的增删改查基本相同。
-
this指向调用该方法的对象。
-
大多数对象最终继承自Object.prototype
-
Object.create(proto)
扫描二维码关注公众号,回复: 6034155 查看本文章 -
原型方法的重写。
1-3 代码分析
1 Grand.prototype.lastName = "Chen"; 2 function Grand(){} 3 var grand = new Grand(); 4 Father.prototype = grand; 5 function Father(){ 6 this.firstName = "Xianxian"; 7 this.fortune = { 8 card1 : 'visa' 9 } 10 } 11 var father = new Father(); 12 Son.prototype = father; 13 function Son(){ 14 this.hobby = "play"; 15 } 16 var son = new Son();
执行效果如下:主要为了验证修改子类原始值不会影响父类,而修改引用值则会影响父类。