相关疑难解决方法(0)

覆盖setter,并且还必须覆盖getter

class AbstractClass {

    constructor() {
    }

    set property(value) {
        this.property_ = value;
    }

    get property() {
        return this.property_;
    }

}

class Subclass extends AbstractClass {

    constructor() {
        super();
    }

    set property(value) {
        super.property = value;
        if (!(this.property_ instanceof SubclassAssociatedClass)) throw new TypeError();
    }

    //get property() {
    //  return super.property;
    //}

}
Run Code Online (Sandbox Code Playgroud)

覆盖set属性的方法,看起来get方法也必须被覆盖,否则undefined返回(即,get方法不是继承的,取消注释get property()上面的子类方法,一切正常).

我认为这是规范的一部分,但如果行为是交叉编译的结果,可能会遵循.可以肯定的是,这是编码重写的setter和getter(同时还是根本没有)的正确方法?

javascript class getter-setter ecmascript-6 traceur

19
推荐指数
1
解决办法
1万
查看次数

标签 统计

class ×1

ecmascript-6 ×1

getter-setter ×1

javascript ×1

traceur ×1