JavaScript中var that = this的作用与原理详解

作者:拾光

时间:2026-10-28

浏览:150

本文解析JavaScript中var that = this的常见写法。在嵌套函数或回调中,this指向会发生变化。通过将该变量赋值给that,可以保存外层函数的this引用,从而在内部函数中正确访问外层对象,避免this指向错误导致的Bug。

文章目录

JavaScript中var that = this的作用与原理详解

在阅读JavaScript代码时,你可能会遇到类似var that = this;这样的语句,这究竟是什么意思呢?



在JavaScript语言中,this关键字通常指向当前执行上下文中的对象。



语句var that = this的作用是将当前的this对象引用复制一份并赋值给变量that。这样做的实际意义何在?



具体代码示例如下:

 
$('#zhetenga').click(function(){
//this是被点击的#zhetenga
var that = this;
$('.zhetenga').each(function(){
//this是.zhetenga循环中当前的对象
//that仍然是刚才被点击的#zhetenga
}); 
}); 

由此可见,this对象的指向在程序执行过程中可能会发生变化。而在执行var that = this之后,只要that未被重新赋值,它依然指向当时的this对象,从而确保能够正确引用原始对象,避免因this指向改变而找不到目标。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章