- 箭头函数中的this指向是一层一层往外面的作用域中的this
const obj = {
fu() {
setTimeout(function () {
console.log(this) //window
}, 1000)
setTimeout(() => {
console.log(this) //obj
}, 1000)
}
}
obj.fu()
- 练习
const obj = {
fu() {
setTimeout(function () {
setTimeout(function () {
console.log(this) //window
}, 0)
setTimeout(() => {
console.log(this) //window
}, 0)
}, 0)
setTimeout(() => {
setTimeout(function () {
console.log(this) //window
}, 0)
setTimeout(() => {
console.log(this) //obj
}, 0)
}, 0)
}
}
obj.fu()