小编Pol*_*unk的帖子

在JavaScript中,如何访问超类'实例的属性?

在JavaScript中,如何访问超类'实例的属性?作为一个例子,我希望超类'实例的"prop"设置为"true",但是这段代码创建并将子类'instance'的"prop"设置为"true",留下超类'实例'的支柱"假的:

var SuperClass = function() {
    this.prop = true;
}

SuperClass.prototype.doStuff = function() { 
    if (this.prop) {
        console.log('SuperClass does A.');
    }
    else {
        console.log('SuperClass does B.');
    }
}

SuperClass.prototype.load = function() {
    this.prop = false;
}

SuperClass.prototype.setProp = function(val) {
    this.prop = val;
}

function SubClass() {
    SuperClass.call(this);
}

SubClass.prototype = Object.create(SuperClass.prototype);
SubClass.prototype.constructor = SubClass;

SubClass.prototype.doStuff = function() {
    SuperClass.prototype.doStuff();

    if (this.prop) {
        console.log('SubClass does A.');
    }
    else {
        console.log('SubClass does B.');
    }
}

SubClass.prototype.load = function() {
    SuperClass.prototype.load();
} …
Run Code Online (Sandbox Code Playgroud)

javascript inheritance class

3
推荐指数
1
解决办法
929
查看次数

标签 统计

class ×1

inheritance ×1

javascript ×1