> 文章列表 > ES6 箭头函数的this使用

ES6 箭头函数的this使用

ES6 箭头函数的this使用

什么时候使用箭头函数

setTimeout(function () {console.log(this)
} , 1000);
setTimeout(() => {console.log(this)//这里this找的是window的this
}, 1000);

结论:箭头函数没有this,这里this引用的是最近作用域(aaa函数里的this)的this。

    const obj = {aaa(){setTimeout(function () {console.log(this)//window});setTimeout(() => {console.log(this)//obj});}}obj.aaa()

​ 上述中第一个是window对象的this,第二个箭头函数的this是obj的。

    const obj = {aaa() {setTimeout(function () {setTimeout(function () {console.log(this) //window})setTimeout(() => {console.log(this) //window})})setTimeout(() => {setTimeout(function () {console.log(this) //window})setTimeout(() => {console.log(this) //obj})})}}obj.aaa()