原理:

复制被继承实例、重写继承构造函数原型!

代码理解

  1. // 父类
  2. function SuperType(){
  3. this.memberList = ['a','b','c']
  4. }
  5. // 子类
  6. function SubType(){
  7. this.cur = 'a'
  8. }
  9. SubType.prototype = new SuperType();
  10. let A1 = new SubType()
  11. let A2 = new SubType()
  12. A1.memberList.push(111)
  13. console.log(A2)

缺点

  • 所有实例都是引用原型对象、数据篡改会影响所有实例!