JavaScript คลาสคงที่
ตัวอย่าง
สร้างเมธอดแบบสแตติกและเรียกใช้ในคลาส:
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.
ความหมายและการใช้งาน
static
คีย์เวิร์ดกำหนดเมธอดแบบคงที่สำหรับคลาส
เมธอดสแตติกถูกเรียกโดยตรงบนคลาส ( Car
จากตัวอย่างด้านบน) - โดยไม่ต้องสร้างอินสแตนซ์/อ็อบเจ็กต์ ( mycar
) ของคลาส
รองรับเบราว์เซอร์
static
เป็นคุณลักษณะ ECMAScript6 (ES6)
ES6 (JavaScript 2015) ได้รับการสนับสนุนในเบราว์เซอร์ที่ทันสมัยทั้งหมด:
Chrome | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes |
static
ไม่รองรับใน Internet Explorer 11 (หรือเก่ากว่า)
ไวยากรณ์
static methodName()
รายละเอียดทางเทคนิค
เวอร์ชันจาวาสคริปต์: | ECMAScript 2015 (ES6) |
---|
ตัวอย่างเพิ่มเติม
หากคุณต้องการใช้วัตถุ mycar ภายในเมธอดสแตติก คุณสามารถส่งเป็นพารามิเตอร์ได้:
ตัวอย่าง
ส่ง "mycar" เป็นพารามิเตอร์:
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);
หน้าที่เกี่ยวข้อง
บทช่วยสอน JavaScript: คลาส JavaScript
บทช่วย สอน JavaScript: JavaScript ES6 (EcmaScript 2015)
การอ้างอิง JavaScript: ตัวสร้าง () วิธีการ