JavaScriptクラス静的
例
静的メソッドを作成し、クラスで呼び出します。
class Car {
constructor(brand) {
this.carname =
brand;
}
static hello() { // static method
return "Hello!!";
}
}
mycar = new Car("Ford");
//Call 'hello()' on
the class Car:
document.getElementById("demo").innerHTML
= Car.hello();
//and NOT on the 'mycar' object:
//document.getElementById("demo").innerHTML
= mycar.hello();
//this would raise an error.
定義と使用法
キーワードは、クラスのstatic
静的メソッドを定義します。
静的メソッドは、クラスCar
のインスタンス/オブジェクト(mycar
)を作成せずに、クラスで直接呼び出されます(上記の例から)。
ブラウザのサポート
static
ECMAScript6(ES6)機能です。
ES6(JavaScript 2015)は、最新のすべてのブラウザーでサポートされています。
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
static
Internet Explorer 11(またはそれ以前)ではサポートされていません。
構文
static methodName()
技術的な詳細
JavaScriptバージョン: | ECMAScript 2015(ES6) |
---|
その他の例
mycarオブジェクトを使用する場合は、staticメソッド内で、パラメーターとして送信できます。
例
「mycar」をパラメータとして送信します。
class Car {
constructor(brand) {
this.carname =
brand;
}
static hello(x) {
return "Hello " +
x.carname;
}
}
mycar = new Car("Ford");
document.getElementById("demo").innerHTML
= Car.hello(mycar);
関連ページ
JavaScriptチュートリアル:JavaScriptクラス
JavaScriptチュートリアル:JavaScript ES6(EcmaScript 2015)
JavaScriptリファレンス:constructor()メソッド