JS继承方式及其优缺点总结
- 优点:最简单的方式,将子类的原型指向父类的实例即可。- 缺点:一是引用类型的属性被所有实例共享,修改堆内存数据时会将所有实例数据都修改,但是直接创建新的存储对象就不会产生这个错误。二是创建子类实例时不能向超类型的构造函数中传递参数。(因此开发中很少单独使用原型链)- 优点:能实现属性的继承,也可以在子类型创建实例时为父类型传递参数。- 缺点:借用构造函数虽然解决了刚才的问题,但不能继承构造函数的原型,只能继承构造函数的属性和方法。因此每次创建子类实例时都会调用构造函数、复制构造函