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

常見問題

私有/公開成員?

參考資料