Classe JavaScript statica
Esempio
Crea un metodo statico e chiamalo sulla 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.
Definizione e utilizzo
La static
parola chiave definisce metodi statici per le classi.
I metodi statici vengono chiamati direttamente sulla classe ( Car
dall'esempio sopra) - senza creare un'istanza/oggetto ( mycar
) della classe.
Supporto browser
static
è una funzione ECMAScript6 (ES6).
ES6 (JavaScript 2015) è supportato in tutti i browser moderni:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
static
non è supportato in Internet Explorer 11 (o versioni precedenti).
Sintassi
static methodName()
Dettagli tecnici
Versione JavaScript: | ECMAScript 2015 (ES6) |
---|
Altri esempi
Se vuoi utilizzare l'oggetto mycar, all'interno del metodo statico, puoi inviarlo come parametro:
Esempio
Invia "mycar" come parametro:
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);
Pagine correlate
Esercitazione JavaScript: classi JavaScript
Esercitazione JavaScript: JavaScript ES6 (EcmaScript 2015)
Riferimento JavaScript: il metodo constructor()