如果我有:
function myFunc(a)
{
if(! (this instanceof myFunc) ) return new myFunc(a);
this.myVar = "FOOBAR";
}
如何让它发挥作用? :
myFunc(function() { alert(this.myVar )}); // output must be "FOOBAR";
答案 0 :(得分:3)
使用a
致电this
。
function myFunc(a)
{
if(! (this instanceof myFunc) ) return new myFunc(a);
this.var = "FOOBAR";
a.call(this); // <-- Added this line
}
myFunc(function() { alert(this.var)}); // output must be "FOOBAR";