浅析JavaScript中this储存

来源:互联网 发布:木琴软件 编辑:程序博客网 时间:2024/05/21 09:30

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     }); });

var _this = this
可以看到,this对象在程序中随时会改变,而var that = this(var _this = this)之后,that没改变之前仍然是指向当时的this,这样就不会找不到原来的对象。  

原创粉丝点击