Phương thức tĩnh JavaScript
Các phương thức lớp tĩnh được định nghĩa trên chính lớp đó.
Bạn không thể gọi một phương thức static
trên một đối tượng, chỉ trên một lớp đối tượng.
Ví dụ
class Car {
constructor(name) {
this.name =
name;
}
static hello() {
return "Hello!!";
}
}
const 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.
Nếu bạn muốn sử dụng đối tượng myCar bên trong phương thức static
, bạn có thể gửi nó dưới dạng tham số:
Ví dụ
class Car {
constructor(name) {
this.name =
name;
}
static hello(x) {
return "Hello " +
x.name;
}
}
const myCar = new Car("Ford");
document.getElementById("demo").innerHTML
= Car.hello(myCar);