静的メソッド (Static Method) とは

個々のインスタンスではなく、クラスそのものに紐付いたメソッドです。メソッド名の前に static を付けて定義します。

[!TIP] インスタンスを作らなくても クラス名.メソッド名() で直接呼び出すことができます。

静的メソッド内での this

静的メソッド内での this は「クラス自身」を指します。そのため、個別のインスタンスプロパティ(例:this.blades)にはアクセスできません。

class Fan {
  static totalCount = 0;

  static info() {
    // 〇 クラスプロパティは使える
    console.log(`合計台数: ${Fan.totalCount}`);
    
    // × インスタンスプロパティは使えない
    // console.log(this.modelName); 
  }
}

使いどころ