调用匿名函数'this'从函数

Call anonymous function with 'this' from function

本文关键字:函数 this 调用      更新时间:2023-09-26

如何在调用中提供的函数的上下文中执行这个匿名函数?

function test(text) {
    this.first = 'test';
    console.log(this.first);
}

(function(val){
    return function(val) {
        console.log(this.first);
    }
}()).call(test)

我没有包括var self = this;进入返回函数前:

(function(val){
    var self = this;   //add this line
    return function(val) {
        console.log(self.first);
    }
}()).call(test)

我相信你得到了thistesttest.prototype的背景下的价值。