Phương thức tĩnh trong JavaScript

Phương pháp lớp tĩnh được định nghĩa trên lớp bản thân.

Bạn không thể gọi trên đối tượng static Phương pháp, chỉ có thể gọi trên lớp đối tượng.

mẫu

class Car {
  constructor(name) {
    this.name = name;
  }
  static hello() {
    return "Hello!!";
  }
}
let myCar = new Car("Ford");
// Bạn có thể gọi 'hello()' trên lớp Car:
document.getElementById("demo").innerHTML = Car.hello();
// Nhưng không thể gọi trên đối tượng Car:
// document.getElementById("demo").innerHTML = myCar.hello();
// Làm điều này sẽ gây ra lỗi.

Thử ngay

Nếu bạn muốn trong static Sử dụng đối tượng myCar trong phương pháp, bạn có thể gửi nó làm tham số:

mẫu

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);

Thử ngay