1、原型链继承
“父类”的实例作为子类的prototype SubType.prototype = new SuperType()
2、组合继承(原型链+构造函数)
function
SubType(name, job) {
// 继承属性
SuperType.call(
this
, name)
this
.job = job
}
这种模式避免了原型链和构造函数继承的缺陷,融合了他们的优点,是最常用的一种继承模式
3、原型式继承 ES5 Object.create() 方法规范了原型式继承
传入对象作为中间函数的原型
function object(o){
function F(){}
F.prototype = o
return new F()
}
4、寄生式继承