类继承

继承的工作方式与其他面向对象的语言一样:在超类中定义的方法可以在扩展子类中访问。

如果子类声明它自己的构造函数,那么它必须通过 super() 调用父构造函数才能访问 this

class SuperClass {

    constructor() {
        this.logger = console.log;
    }

    log() {
        this.logger(`Hello ${this.name}`);
    }

}

class SubClass extends SuperClass {

    constructor() {
        super();
        this.name = 'subclass';
    }

}

const subClass = new SubClass();

subClass.log(); // logs: "Hello subclass"