静态引导程序构造函数

时间:2018-10-16 15:02:22

标签: typescript static

当我搜索如何迁移到NodeJS代码的打字稿时,我发现了以下内容:

class Server {
  public app: any;

  constructor() {
    this.app = express();

  }

  public static bootstrap(): Server {
    return new Server();
  }
}

使用哪个:

const app = Server.bootstrap().app;

我的问题是,与使用常规构造函数相比,使用静态方法的优势是什么,这是最佳实践还是取决于用例。是设计模式吗?

1 个答案:

答案 0 :(得分:0)

static关键字为类定义了静态方法。在类的实例上不调用静态方法。而是在类本身上调用它们。这些通常是实用程序功能,例如用于创建或克隆对象的功能。您不需要保持任何状态的地方。

例如:Number.isInteger()。 您可以调用静态函数而无需实例化它。

在当前示例中,您基本上创建了一个实例化相同类的函数。在您认为还有其他用例之前,我认为它没有必要。