11.03---继承,原型链、组合继承

1.接口继承在ECMAScript中是不可能的,因此实现继承是ECMAScript唯一支持的继承方式,因此显示中主要是通过原型链继承。
11.03---继承,原型链、组合继承
SubType的原型指向SuperType的原型,因此继承它的所有原型上的属性和方法,若实例把所继承来的方法遮避了,相当于构造函数下的方法被重写了。

2.原型和继承的关系:
(1)instanceof():实例的原型链中出现过相应的函数—>返回true。
(2)isPrototypeOf()

3.重点理解:
以对象字面量方式创建原型方法会破坏之前的原型链,相当重写原型链。
解决方法:
(1)盗用构造函数,用call():
优点:传递参数。
缺点:需在构造函数中定义方法,因此函数不能调用。
因此,采用组合继承:
组合继承(为经典继承):综合了原型链和盗用构造函数。
基本思路:
使用原型链继承原型上的属性和方法,而通过盗用构造函数继承实例属性。