var i=0;
var t={
a:function(){
this.timer=setInterval(this.b,30);
},
b:function(){
if(i++<1){
console.log(this);
}
}
};
t.a();
为什么我得到[circular object global]?我想'这个'是指对象t
;SetInterval with javascript in javascript
我该怎么做?
而且我知道如何解决这个问题,下面的代码是正确的结果:
var i=0;
var t={
a:function(){
var that=this;
this.timer=setInterval(function(){
that.b();
},30);
},
b:function(){
if(i++<1){
console.log(this);
}
}
};
t.a();
所以,如果你知道如何解决这个问题......你为什么问? – migg
@migg我想知道为什么:) – Fakefish
请不要混淆* context *('thisArg')与[variable] * scope * – Bergi