关于箭头函数this指向的问题

来源:4-1 作用域和自由变量

慕前端03542954

2019-11-08

{
  const lives = 2;

  const cat = {
    lives: 1,
    jumps: () => {
      return this;
    }
  }

  console.log(cat.jumps());
}
为什么在浏览器环境中运行这段代码,this一直指向的是Window。一直理解不了这件事情!
写回答

1回答

陶子阳

2019-11-08

会不会是因为箭头函数,箭头函数的取值是他上级作用域,在执行的时候cat的上级作用域就是window?

0
5
qq_十_1
回复
慕前端03542954
你理解错了,这个this方式作用域就是最外面{}的,所以剪头函数里的this指向的是window
2020-01-08
共5条回复

BAT大牛带你横扫初级前端JavaScript面试(第二版)

BAT高级前端工程师亲授,结合真实面试题,提高面试成功几率

4268 学习 · 817 问题

查看课程