0

我在 JavaScript 上有点挣扎。如果我在另一个函数中调用 init 函数,我只会让下面的代码工作。如果我在超时函数之外调用 this.init() 或 that.init(),它就不起作用。

var App = function() {
    var that = this;       

    // Workaround
    var timeout = setTimeout(function(){            
        that.init();            
    },1);
};

var app = new App();

App.prototype.init = function() {    
    console.log('works');
};

谢谢你的帮助。

干杯。

4

1 回答 1

3

您在实例化 App 后分配原型。以前做。

var App = function() {
    this.init();
};

App.prototype.init = function() {    
    console.log('works');
};

var app = new App();
于 2013-02-08T22:39:09.003 回答