通过使用方法扩展类是否是一种好习惯?

多多夫

我已经看到了这个问题,并且知道如何扩展课程。但是,用一种方法来执行此操作是一种好习惯吗?使用此方法是否安全:

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;
TJ人群

使用函数执行重复的工作,而不是在需要执行此操作的任何地方重复工作是标准做法。这样可以减少出错的机会,并且可以集中处理操作,以防需要随着时间的流逝而增强。在继承关系中将构造函数和关联的原型(“类”)连接起来并没有什么特别的事。


与切线相关的旁注:从ES2015(又名“ ES6”,2015年6月发布的规范)开始,这种设置这些层次结构的方法已经过时了(尽管它当然仍然有效)。ES2015 +的方式是classextends

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用将抽象类扩展为@RequestBody的类是否被视为一种好习惯?

密封案例类是否是一种好习惯?

在构造函数中使用set方法初始化类的字段是否是一种好习惯?

使用“默认” Java访问权限从客户端隐藏类和方法是否是一种好习惯?

抽象类/接口中的空方法是否被视为一种好习惯?

创建修改类const外部的数据的方法是否是一种好习惯?

在C#中使用类“枚举对象”是否是一种好习惯?

为短程序的对象创建单独的类,而不是使用包含main的类,是否被视为一种好习惯?

通过php 7.1中的会话发送页面名称是否是一种好习惯?

设置包装器类是一种好习惯吗?

对代表一行的类中的每个属性都使用吸气剂是一种好习惯,还是我应该研究另一种方法?

公开struct属性的地址是否是一种好习惯?

模块返回JSONArray是否是一种好习惯?

缩进内联注释是否是一种好习惯?

将exec与PHP一起使用是否是一种好习惯?

将通用方法放入Python中的抽象类是一种好习惯吗?

将this关键字包含在类方法中是一种好习惯吗?

在Symfony2的实体类中添加额外的方法是一种好习惯吗?

从父类方法向孩子强制转换“ this”是一种好习惯吗?

将类扩展提取到单独的头文件中以便在Objective-C中进行单元测试是否是一种好习惯?

将空实例赋予方法是否是一种好习惯?

在JavaScript中命名对象属性的方法是否是一种好习惯?

将常量参数绑定到构造函数中的方法是否是一种好习惯

MVVM数据模型包含方法是否是一种好习惯?

在类中使用Optional作为属性是一种好习惯吗?

使用Exception防止类被不需要的参数实例化是一种好习惯吗

在包/命名空间和类中使用相同的名称是一种好习惯吗?

在构造类中返回某些东西是一种好习惯吗?使用PHP oop

在开发环境中始终使用“ root”用户是否是一种好习惯?