Lớp JavaScript tĩnh
Ví 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.
Sự miêu tả
Từ khóa static
đị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 tạo một thể hiện/đối tượng ( mycar
) của lớp.
Hỗ trợ trình duyệt
static
là 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 kể từ tháng 6 năm 2017:
Chrome 51 | Edge 15 | Firefox 54 | Safari 10 | Opera 38 |
May 2016 | Apr 2017 | Jun 2017 | Sep 2016 | Jun 2016 |
static
không được hỗ trợ trong Internet Explorer.
Cú pháp
static methodName ()
Chi tiết kỹ thuật
Phiên bản JavaScript: | ECMAScript 2015 (ES6) |
---|
Thêm ví dụ
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ố:
Ví dụ
Gửi "mycar" làm 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);
Trang liên quan
Hướng dẫn JavaScript: Các lớp JavaScript
Hướng dẫn JavaScript: JavaScript ES6 (EcmaScript 2015)
Tham khảo JavaScript: Phương thức constructor()