对象创建模式:

  • 工厂模式
  • 构造函数模式
  • 原型模式

继承模式

  • 原型式继承
  • 寄生式继承
  • 构造函数
  • 原型式和构造函数的组合式(缺点:运行两次超类类函数,积累函数的属性被挂载在原型对象上和实例对象上)
  • 寄生组合模式(主要是解决上述模式中调用两次超类构造函数)
    • 见例子:
  function superObj (name){
  this.name = name;
  this.firends = [1,2,3];
  }
  superObj.prototype.say = function(w) {
  console.log(w);
  };
  function subObj (name) {
  superObj.call(this,name);
  }
  subObj.prototype = Object.assign(Object.create(superObj.prototype),{
  constructor: subObj
  })

有点晚了,改日再一一详细总结

01-16 04:42