在vue 开发过程中我们经常会发现
let that = this
这样写有什么好处呢
首先要理解this,下面简述两点
- this 永远指向一个对象
- this 的指向取决于函数调用的位置
首先 this 指向的是一个对象,这个好理解,难就难在第二点,在JavaScript 中 一切都是对象,运行环境也是对象,this 的指向是动态的很难确定指向那个对象
举例:
$('#content').click(function(){
//this是被点击的#content
var that =this;
$('.content').each(function(){
//this是.content循环中当前的对象
//that仍是刚才被点击我的#content
})
})
this指向的对象发生了变化,故需要在函数前将this指向的对象提前保存一下