week10 - stayjay/wp109b GitHub Wiki
class Circle {
constructor(r) {
this.r = r
}
area() {
return 3.14*this.r*this.r;
}
}
var c1 = new Circle(1)
console.log("c1.r=%d", c1.r);
console.log("c1.area()=%d", c1.area());
var c2 = new Circle(2)
console.log("c2.area()=%d", c2.area());
結果
c1.r=1
c1.area()=3
c2.area()=12
JavaScript語言中因為在設計上並不是以類別為基礎的物件導向,設計上不一樣,
所以 this 的指向的是目前呼叫函式或方法的擁有者(owner)物件,也就是說它與函式如何被呼叫或調用有關, 雖然是同一函式的呼叫,因為不同的物件呼叫,也有可能是不同的 this 值。 使用關鍵字class創建一個類。
class
始終添加一個名為 的方法constructor(): 句法
class ClassName {
constructor() { ... }
JavaScript 類不是對象。
它是JavaScript 對象的模板。 }