ES6 中的class
類別,它是效仿其他程式語言擁有物件導向(OOP)的概念,取代需要原型 prototype 的操作,因為寫法更簡潔與易於理解,用來代替 javascript 傳統建構物件的形式。
class foo {
// class 的建構子
constructor(x, y) {
this.x = x;
this.y = y;
}
// class 的方法
getPoint() {
return {x, y};
}
}
typeof foo // "function"
foo === foo.prototype.constructor // true
let f = new foo(10, 20);
console.log(f.getPoint()); // {x: 10, y: 20}
class
本身原型是指向建構函數 functionprototype
的屬性還是存在的constructor
建構子函數class
本身也可以使用表達式的來定義static
關鍵字extends
關鍵字進行物件繼承
super
關鍵字Symbol
唯一性的形式定義可以參考 : ES6 class 關鍵字