Méthodes statiques JavaScript
Les méthodes de classe statiques sont définies sur la classe elle-même.
Vous ne pouvez pas appeler une static
méthode sur un objet, uniquement sur une classe d'objets.
Exemple
class Car {
constructor(name) {
this.name =
name;
}
static hello() {
return "Hello!!";
}
}
let myCar = new Car("Ford");
// You can call 'hello()' on
the Car Class:
document.getElementById("demo").innerHTML
= Car.hello();
// But NOT on a Car Object:
// document.getElementById("demo").innerHTML
= myCar.hello();
// this will raise an error.
Si vous souhaitez utiliser l'objet myCar dans la static
méthode, vous pouvez l'envoyer en paramètre :
Exemple
class Car {
constructor(name) {
this.name =
name;
}
static hello(x) {
return "Hello " +
x.name;
}
}
let myCar = new Car("Ford");
document.getElementById("demo").innerHTML
= Car.hello(myCar);