我已经看到了这个问题,并且知道如何扩展课程。但是,用一种方法来执行此操作是一种好习惯吗?使用此方法是否安全:
function extendClass(child, parent) {
child.prototype = Object.create(parent.prototype);
child.constructor = child;
}
extendClass(Banana, Fruit);
而不是这样:
Banana.prototype = Object.create(Fruit.prototype);
Banana.prototype.constructor = Banana;
使用函数执行重复的工作,而不是在需要执行此操作的任何地方重复工作是标准做法。这样可以减少出错的机会,并且可以集中处理操作,以防需要随着时间的流逝而增强。在继承关系中将构造函数和关联的原型(“类”)连接起来并没有什么特别的事。
与切线相关的旁注:从ES2015(又名“ ES6”,2015年6月发布的规范)开始,这种设置这些层次结构的方法已经过时了(尽管它当然仍然有效)。ES2015 +的方式是class
和extends
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句