我们使用 John Resig 的 inherit.js。这使我们可以访问方便的_super()
函数来调用父函数。太棒了,但是今天我被一个问题难住了,我this._super()
无法从内部调用 a setTimeout
,即使我绑定了这个:
代码示例
var Person = Class.extend({
init: function(isDancing){
this.dancing = isDancing;
},
dance: function(){
return this.dancing;
}
});
var Ninja = Person.extend({
init: function(){
this._super( false );
},
dance: function(){
window.setTimeout(function(){
// Call the inherited version of dance()
return this._super();
}.bind(this),50);
});
this._super()
未定义!到底是怎么回事?