使用'来调用匿名函数'从功能

时间:2014-07-27 01:05:33

标签: javascript

如何使用调用提供的函数的上下文执行此匿名函数?

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


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

2 个答案:

答案 0 :(得分:1)

我没有包括var self = this;在进入返回功能之前:

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

答案 1 :(得分:0)

我相信您可以thistest一起获得test.prototype内容的价值。