JavaScript 中的 var that = this

来源:互联网 发布:mini mac恢复出厂设置 编辑:程序博客网 时间:2024/04/30 04:51

关于JavaScript中的var that =this

                                                                                         Author:Bridge                                                                                         Time:2017/8/01

在JavaScript中,今天学习H5写一个小游戏的时候,遇到了一个不太懂的点,在此写下自己的第二篇CSDN博客。
var that = this;//传递this对象

this 是JavaScript语言的一个关键字。它代表函数运行时,自动生成一个内部对象,只能在函数内部使用。
在以上代码中,就是将当前的对象this复制到that中。举个栗子说明一下:

        $('#canvas').click(function () {            var that = this;//this是被点击的#canvas            $('.mine-canvas').forEach(function () {//.mine-canvas是当前的循环对象,that仍然是当前的this            })        })

从上面的栗子可以看出,在执行的过程中,this对象会被改变,如果将其复制道that中,that没有改变之前仍然是指向了当时的this,可以找到原this对象。其中,在之前的一个项目微信小程序中,也见到过

let that = this;

原理相同,不再栗子中赘述。以上是我第一次在CSDN写关于自己学习的博客文章,有很多不懂得,参考和借鉴,多多学习,正从一个菜鸟进化到一个前端老鸟的路上。在遇到很多问题的时候,不要着急,想明白问题本身出在哪,再对症下药。


程序猿必备的三个工具,第一是Github ,第二是Google StackOverflow ,其中的大神数不胜数,多多学习,贵在恒。