var obj1={
var1:"val1",
init:function(){
this.var1="val2";
var self=this;
setTimeout(function(){self.var1="val3"},1);
setTimeout(function(){obj1.var1="val3"},1);
}
}
obj1.init();
console.log(obj1.var1);
console.log(obj1);
setTimeout コールバックで var1 に値を設定/割り当てる方法。val3 を割り当てても効果はなく、スクリーンショットに見られるように、var1 として言及されている 2 つのプロパティがあります。1 は var1=val2 であり、その他は var1=val3 ですが、 this.var1 は常に val3 ではなく val2 を返します