Class sa JavaScript
Ang ECMAScript 2015, kilala din bilang ES6, ay nagpasimula ng klase ng JavaScript.
Ang JavaScript ay isang template ng mga JavaScript object.
语法 ng JavaScript
Gamit ang keyword class
Lumikha ng isang klase.
Palaging idagdag ang pangalan na constructor()
Na may method:
Mga tuntunin ng gramatika
class ClassName { constructor() { ... } }
实例
class Car { constructor(name, year) { this.name = name; this.year = year; } }
Ang halimbawa sa itaas ay lumikha ng isang klase na may pangalan na "Car".
Ang klase ay may dalawang pangunahing katangian: "name" at "year".
Class sa JavaScriptHindiBagay.
Ito ay bagay na bagay ng JavaScriptTemplate.
Gamit ang klase
Kapag mayroon ka ng isang klase, maaari mong gamitin ang klase upang lumikha ng bagay:
实例
let myCar1 = new Car("Ford", 2014); let myCar2 = new Car("Audi", 2019);
Ang halimbawa sa itaas ay gumamit ng Klase ng Carupang lumikha ng dalawa Bagay na Car.
Ang constructor method ay awtomatikong tinatawag kapag nilikha ang bagay na bagay.
Constructor method
Ang constructor ay isang espesyal na method:
- Dapat may eksaktong pangalan na "constructor"
- Automatikong nagpapatugtug kung lumikha ng bagay
- Ginagamit para sa inisyalisasyon ng mga katangian ng bagay
- Kung hindi mo ay naglagay ng constructor, magdadagdag ang JavaScript ng isang walang laman na constructor.
Mga klase ng method
Ang tuntunin ng gramatika ng klase ng method ay katulad ng method ng bagay.
Gamit ang keyword na class upang lumikha ng isang klase.
Palaging idagdag ang method na constructor().
Pagkatapos ay magdagdag ng anumang bilang ng mga method.
Mga tuntunin ng gramatika
class ClassName { constructor() { ... } method_1() { ... } method_2() { ... } method_3() { ... } }
Lumikha ng isang klase ng method na "age" na ibibigay ang taon ng sasakyan:
实例
class Car { constructor(name, year) { this.name = name; this.year = year; } age() { let date = new Date(); return date.getFullYear() - this.year; } } let myCar = new Car("Ford", 2014); document.getElementById("demo").innerHTML = "Ang aking sasakyan ay " + myCar.age() + " taon na gulang.";
Maaari mong ipagpadala ng argumento sa mga klase ng method:
实例
class Car { constructor(name, year) { this.name = name; this.year = year; } age(x) { return x - this.year; } } let date = new Date(); let year = date.getFullYear(); let myCar = new Car("Ford", 2014); document.getElementById("demo").innerHTML= "Ang aking sasakyan ay " + myCar.age(year) + " taon na gulang.";
Suporta ng browser
Ang sumusunod na talahanayan ay naglalarawan ng unang bersyon ng browser na ganap na sumusuporta sa klase ng JavaScript:
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 49 | Edge 12 | Firefox 45 | Safari 9 | Opera 36 |
2016 年 3 月 | 2015 年 7 月 | 2016 年 3 月 | 2015 年 10 月 | 2016 年 3 月 |
"use strict"
类中的语法必须以“严格模式”编写。
如果您不遵循“严格模式”规则,将收到错误消息。
实例
在“严格模式”下,如果您使用变量而不声明它,会得到错误:
class Car { constructor(name, year) { this.name = name; this.year = year; } age() { // date = new Date(); // This will not work let date = new Date(); // This will work return date.getFullYear() - this.year; } }
在 JS 严格模式 在 中学习更多关于“严格模式”的内容。