揭秘that=this

在javascript中为什么写var that = this?
在javascript中,this代表的是当前对象。
var that=this就是将当前的this对象复制一份到that变量中。这样做有什么意义呢?

$(‘#OK’).click(function(){
//this是被点击的#OK
var that = this;

$(‘#OK’).each(function(){

//this是循环中当前的对象
//that仍然是刚才被点击的#OK
});
});
可以看到,this对象在程序中随时会改变,而var that=this之后,that没改变之前仍然是指向当时的this,这样就不会出现找不到原来的对象的情况了。

 

猜你喜欢

转载自www.cnblogs.com/Shu-Qing/p/11790720.html