我在javascript中編寫了一些對象(我猜是類)。 B類繼承自A類.A類有一個名爲isValid的方法,而B類覆蓋該方法。我現在用的是YUI擴展功能,具有B類延長A級javascript中的超類方法
A = function(){
}
A.prototype = {
isValid:function(){
/* Some logic */
return booleanValue;
}
}
B = function(){
}
YAHOO.lang.extend(B, A,{
isValid:function(){
// call class A's valid function
// some more logic for class B.
return booleanValue;
}
});
我希望能夠做的是調用類的B類的isValid函數中的isValid功能。問題是,我可以從類B的isValid方法訪問類A的isValid方法嗎?我知道你可以從Class B的構造函數中使用以下行來訪問A類的構造函數:
this.constructor.superclass.constructor.call(this,someParam);
方法有類似的可能性嗎?如果沒有,這樣做的好做法是什麼?目前,我正在叫超類的isValid方法
A.prototype = {
a_isValid:function(){
// class A's is valid logic
return booelanValue;
},
isValid:function() {return this.a_isValid();}
}
然後我可以調用從類B的a_isValid功能這不會爲我工作,但我更願意稱之爲超類的IsValid函數中一個輔助方法如果可能,直接。
我會盡力的,謝謝! – Zoidberg 2009-09-08 18:42:30
工作很好......並且使得很有意義,我應該基於構造方法實現它。謝謝! – Zoidberg 2009-09-08 19:09:16
我們可以在這裏使用'this'而不是完整的類名嗎? – TEXHIK 2016-03-04 12:58:15