目标:实现sub函数继承super函数
原型链
1 | //关键代码 |
缺点:
- 无法在不影响sub所有对象实例的情况下,给super的构造函数传参
- 引用类型值的super原型属性会被所有sub实例共享
调用构造函数,改this
1 | function sub(){ |
要点:相当于把super构造函数复制到sub构造函数中执行
新创建的sub对象上执行super函数中的所有对象初始化代码,所以!sub的每个实例都会有自己的属性(和super一样的属性)副本了。
缺点:
- 只能继承super的成员方法,无法继承super原型
组合继承
1 | function sub(){ |