JavaScript Статические методы класса
Статические методы класса определены в самом классе.
Вы не можете вызвать метод static
объекта, только объектный класс.
Пример
class Car {
constructor(name) {
this.name =
name;
}
static hello() {
return "Привет!!";
}
}
let myCar = new Car("Форд");
// Вы можете вызвать 'hello()' в классе автомобиля::
document.getElementById("demo").innerHTML
= Car.hello();
// Но НЕ на объекте автомобиля:
// document.getElementById("demo").innerHTML
= myCar.hello();
// это вызовет ошибку.
Попробуйте сами »
Если вы хотите использовать объект myCar внутри static
метода, вы можете отправить его как параметр:
Пример
class Car {
constructor(name) {
this.name =
name;
}
static hello(x) {
return "Привет " +
x.name;
}
}
let myCar = new Car("Форд");
document.getElementById("demo").innerHTML
= Car.hello(myCar);
Попробуйте сами »