0
在下面的示例中,我如何直接從Base.bar()
調用Base.foo()
,我明白爲什麼它首先調用Test.foo()
,但有什麼辦法可以防止這種情況。如何調用基類方法而不是擴展類方法
class Base {
constructor() {
console.log('Base constructor')
}
foo() {
console.log('Base foo')
}
bar() {
console.log('Base bar')
this.foo();
}
}
class Test extends Base {
foo() {
console.log('Test foo');
super.foo();
}
bar() {
console.log('Test bar');
super.bar();
}
}
const test = new Test();
test.bar();
輸出將是:
Base constructor
Test bar
Base bar
Test foo
Base foo
我的預期輸出是:
Base constructor
Test bar
Base bar
Base foo
換句話說,你不希望實際調用該實例的'foo'方法,但明確'Bar.prototype.foo'。那麼這正是你應該做的。 –