关于js的继承方法
2019-01-23 本文已影响0人
戈弋图
1、原型链继承
原型链继承的问题:由于超类Super的属性变成了子类的原型属性,导致的结果是,如果超类的属性是引用类型属性值时,子类的一个实例的属性值的改变都会影响所有的子类实例。
2、
构造函数继承
构造函数继承的问题:无法继承超类中原型上的方法和属性
3、组合式继承( 原型链继承 +构造函数继承)
组合式继承的问题:超类的构造函数被执行了两次
原型链继承的问题:由于超类Super的属性变成了子类的原型属性,导致的结果是,如果超类的属性是引用类型属性值时,子类的一个实例的属性值的改变都会影响所有的子类实例。
构造函数继承的问题:无法继承超类中原型上的方法和属性
组合式继承的问题:超类的构造函数被执行了两次