已经有一些关于classOOP 是各种语言的问答。
看起来该static方法比 Instance 方法略快,但在常见的实际使用中差异不大。
参考:
使用静态方法与实例化包含方法的类的性能
速度测试:静态与实例方法
在类实例示例中,创建了 2 个对象,原始对象class和克隆对象也使用new.
(如果存在多个不同数据的进程需要设置值并同时使用同一个类的情况,那么new为每个进程创建一个克隆将保持数据完整性。)
在static示例中,只创建一个对象。
在这两种类型之间做出决定时,是否需要考虑任何好处?
例如:
// class instance
class Triple {
do(n = 1) {
return n * 3;
}
}
const triple = new Triple();
triple.do(5); // 15
// static method
class Triple {
static do(n = 1) {
return n * 3;
}
}
Triple.do(5); // 15
Run Code Online (Sandbox Code Playgroud)
更新 constructor 问题
似乎 constructor 只有在class实例中才有效。
参考: …