[英]JavaScript ES6 Classes - Is it an anti-pattern to call a static method to setup an instance within a class?
我正在创建一个调用方法来进行一些处理和设置一些数据的类。 我正在使用 ESLINT,它警告我不应该在没有引用this
的方法前面使用_
。 此方法仅用于在实例中使用。 将该方法转换为静态方法会删除警告。 想知道在实例化期间使用静态方法设置实例是否是一种反模式,还是应该将其保留为实例方法? 下面的示例类。 谢谢!
class AppDataArray extends BaseXmlBuilder {
constructor(arrayOfData) {
super();
this.payload = this._buildAppDataArray(arrayOfData);
}
static _buildAppDataArray(arrayOfData) {
const arrayOfAppData = arrayOfData.map((data) => {
const { app, name, value } = data;
const appData = new AppData(app, name, value);
return appData.payload;
});
return arrayOfAppData;
}
}
这取决于你的情况。 你想在课堂内外经常使用这种方法吗? 所以让它保持静止就可以了。 但是,如果您不需要在类之外使用此方法而不想使其成为对象,则将其转换为普通成员方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.