Lớp JavaScript tĩnh
Thí dụ
Tạo một phương thức tĩnh và gọi nó trên lớp:
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.
Định nghĩa và Cách sử dụng
Từ static
khóa định nghĩa các phương thức tĩnh cho các lớp.
Các phương thức tĩnh được gọi trực tiếp trên lớp ( Car
từ ví dụ trên) - mà không cần tạo một thể hiện / đối tượng ( mycar
) của lớp.
Hỗ trợ trình duyệt
static
là một tính năng ECMAScript6 (ES6).
ES6 (JavaScript 2015) được hỗ trợ trong tất cả các trình duyệt hiện đại:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
static
không được hỗ trợ trong Internet Explorer 11 (hoặc phiên bản cũ hơn).
Cú pháp
static methodName()
Chi tiết kỹ thuật
Phiên bản JavaScript: | ECMAScript 2015 (ES6) |
---|
Các ví dụ khác
Nếu bạn muốn sử dụng đối tượng mycar, bên trong phương thức tĩnh, bạn có thể gửi nó dưới dạng tham số:
Thí dụ
Gửi "mycar" dưới dạng tham số:
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);
Các trang liên quan
Hướng dẫn JavaScript: Các lớp JavaScript
Hướng dẫn JavaScript: JavaScript ES6 (EcmaScript 2015)
Tham chiếu JavaScript: Phương thức constructor ()