打字稿。回调中的关键字“this”

时间:2016-09-02 09:12:02

标签: javascript typescript

我有简单的TypeScript类。这是

class Test {
    myMethod() {
        this.func(this.callback);
    }

    private func(callback: Function) {
        console.log(this);
        callback();
    }

    private callback() {
        console.log(this);
    }
}

当我尝试使用这个课时

new Roadkill.Web.Page.Test().myMethod();

我在控制台中获得以下输出:

Test {} // output from func()
Window {...} // output from callback

正如您所见,'通常'方法functhis视为预期的Test类。但是名为callback的回调方法将this作为全局对象Window处理,这令我感到惊讶。有没有人知道如何使用类Test及其成员来自回调方法?

0 个答案:

没有答案