this是Javascript语言的一个关键字。它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。
在JavaScript中,this代表的是当前对象。 在写原型链时,经常需要将this进行储存,就是将当前的this对象复制一份到另一个变量中。我们习惯用that或者_this来作为变量名,即var that = this; 或者 var _this = this;
那么问题来了,为什么要这样做呢?这样做有什么意义呢? 举个栗子:
$(‘#conten').click(function(){ //this是被点击的#conten var that = this; $(‘.conten').each(function(){ //this是.conten循环中当前的对象 //that仍然是刚才被点击的#conten }); });
可以看到,this对象在程序中随时会改变,而var that=this
之后,that没改变之前仍然是指向当时的this,这样就不会找不到原来的对象。