ES6箭头函数this指向问题

最近在web项目中遇到许多在函数内部在使用this的地方,都先经过转化绑定:let that=this.

如:


let that = this;
dataJs.query(params).then(_ => {
    that.goBack();
});

但记得箭头函数内部this指向的上下文应该是函数定义时候的上下文对象。

于是翻阅资料:

ES6箭头函数this指向问题

证实,箭头函数内部并没有绑定this,它会捕获其所在位置也就是定义时候的位置的上下文作为this值,

于是,该段代码完全可以直接写成:

dataJs.query(params).then(_ => {
    this.goBack();
});