老师箭头函数这样写this究竟指向谁呀?

来源:2-14 对象的扩展

Panda_io

2020-09-19

let ob = {
    name:'ob',
    say:()=>{
        console.log(this.name)
    } 
}
//Uncaught TypeError: Cannot read property 'name' of undefined
ob.say()

假设这样写我觉得this指向定义时所在的环境,也就是obj这个对象里面呀,老师我有点懵.

写回答

1回答

Panda_io

提问者

2020-09-19

还是有点不明白,这里的this指向。

0
4
Panda_io
回复
开心超人plus
object是没有this的,拥有this的只能是函数,在函数调用的时候函数会获得this和arguments对象,哪个obj调用那么this就指向谁,在箭头函数中是没有this的,要找到箭头函数的this,直接往上寻找调用箭头函数的方法,然后再找是那个obj调用的该方法,this就是那个obj
2022-04-17
共4条回复

JavaScript ES(6-11)全版本语法 前端都需要的基础课

前端无门槛学习,从ES6到ES11,一套课程掌握JS最新语法

1328 学习 · 296 问题

查看课程