Class 類別
Node.js Class 類別
函式方法
變數 | 說明 |
---|---|
constructor | 建構子 |
super | 上層類別 |
instanceof | 判斷是類為指定類別 |
建立類別
class Animal {
constructor(name, color){
this.name = name
this.color = color
}
sayHi(){
console.log(`[Animal] My name is「${this.name}」 My color is 「${this.color}」`);
}
}
const animal = new Animal('Dog','white');
// [Animal] My name is「Dog」 My color is 「white」
animal.sayHi()
繼承類別
class Cat extends Animal {
sayHi() {
console.log(`[Cat] My name is「${this.name}」 My color is 「${this.color}」`);
}
}
const KittyCat = new Cat('Kitty', 'pink');
// [Cat] My name is「Kitty」 My color is 「pink」
KittyCat.sayHi();
呼叫父類別方法
class Cat extends Animal {
sayHi() {
console.log(`[Cat] My name is「${this.name}」 My color is 「${this.color}」`);
super.sayHi();
}
}
const KittyCat = new Cat('Kitty', 'pink')
// [Cat] My name is「Kitty」 My color is 「pink」
// [Animal] My name is「Kitty」 My color is 「pink」
KittyCat.sayHi();
判斷是類為指定類別
console.log(KittyCat instanceof Cat) // true
console.log(KittyCat instanceof Animal) // true