JavaScript 静的メソッド
静的メソッドは static キーワードで修飾されたメソッドで、またクラスメソッドとも呼ばれ、クラスに属し、オブジェクトには属しません。オブジェクトをインスタンス化する前に、クラス名.メソッド名静的メソッドを呼び出すことができます。
静的メソッドはオブジェクト上では呼び出せず、クラス内でのみ呼び出すことができます。
サンプル
class サンプル {
constructor(name) {
this.name = name;
}
static hello() {
return "Hello!!";
}
}
let noob = new サンプル("サンプル");
//クラス内で 'hello()' メソッドを呼び出すことができます
document.getElementById("demo").innerHTML = サンプル.hello();
//インスタンス化されたオブジェクトから静的メソッドを呼び出すことはできません
// document.getElementById("demo").innerHTML = noob.hello();
//上記のコードはエラーになります
試してみる »
インスタンスオブジェクトが静的メソッドを呼び出すとエラーになります:

オブジェクト noob 内で静的メソッドを使用したい場合は、パラメータとして渡すことができます:
サンプル
class サンプル {
constructor(name) {
this.name = name;
}
static hello(x) {
return "Hello " + x.name;
}
}
let noob = new サンプル("サンプル");
document.getElementById("demo").innerHTML = サンプル.hello(noob);
試してみる »