Classe JavaScript statique
Exemple
Créez une méthode statique et appelez-la sur la classe :
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.
Définition et utilisation
Le static
mot clé définit les méthodes statiques pour les classes.
Les méthodes statiques sont appelées directement sur la classe ( Car
à partir de l'exemple ci-dessus) - sans créer d'instance/objet ( mycar
) de la classe.
Prise en charge du navigateur
static
est une fonctionnalité ECMAScript6 (ES6).
ES6 (JavaScript 2015) est pris en charge dans tous les navigateurs modernes :
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
static
n'est pas pris en charge dans Internet Explorer 11 (ou version antérieure).
Syntaxe
static methodName()
Détails techniques
Version JavaScript : | ECMAScript 2015 (ES6) |
---|
Plus d'exemples
Si vous souhaitez utiliser l'objet mycar, à l'intérieur de la méthode statique, vous pouvez l'envoyer en paramètre :
Exemple
Envoyez "mycar" en paramètre :
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);
Pages connexes
Tutoriel JavaScript : Classes JavaScript
Tutoriel JavaScript : JavaScript ES6 (EcmaScript 2015)
Référence JavaScript : La méthode constructeur()