174 字
1 分钟
继承之寄生式继承
寄生式继承
寄生式继承背后的思路类似于寄生 构造函数和工厂模式
思路如下:
- 创建一个实现继承的函数,这里只要是能返回对象的函数就行,例如 原型式继承的object函数(Object.create())
- 然后以某种方式增强对象,返回对象
例子:
function create(o){ let clone = object(o); clone.sayHi = function(){ console.log('hello world'); } return clone;}寄生式继承同样适合主要关注对象,而不在乎类型和构造函数的情况下。
寄生式继承存在问题
通过寄生式继承给对象添加函数会导致函数难以重用,与构造函数模式类似