Statische JavaScript-Klasse
Beispiel
Erstellen Sie eine statische Methode und rufen Sie sie für die Klasse auf:
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.
Definition und Verwendung
Das static
Schlüsselwort definiert statische Methoden für Klassen.
Statische Methoden werden direkt auf der Klasse aufgerufen ( Car
aus dem obigen Beispiel) - ohne eine Instanz/ein Objekt ( mycar
) der Klasse zu erstellen.
Browser-Unterstützung
static
ist eine ECMAScript6 (ES6)-Funktion.
ES6 (JavaScript 2015) wird in allen modernen Browsern unterstützt:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
static
wird in Internet Explorer 11 (oder früher) nicht unterstützt.
Syntax
static methodName()
Technische Details
JavaScript-Version: | ECMAScript 2015 (ES6) |
---|
Mehr Beispiele
Wenn Sie das mycar-Objekt innerhalb der statischen Methode verwenden möchten, können Sie es als Parameter senden:
Beispiel
Senden Sie "mycar" als Parameter:
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);
Verwandte Seiten
JavaScript-Tutorial: JavaScript-Klassen
JavaScript-Tutorial: JavaScript ES6 (EcmaScript 2015)
JavaScript-Referenz: Die Methode constructor()