为了账号安全,请及时绑定邮箱和手机立即绑定

ES6箭头函数this问题

ES6箭头函数this问题

_Nervous 2017-07-27 22:38:45
var x=11;var obj={    x:22,    say:()=>{        console.log(this.x);    }}obj.say();这段代码为在NodeJS编译环境下的结果是undefined不是11吗?ps:Nodejs 得版本为6.10.3 编译器是WebStorm 并且已支持ES6
查看完整描述

1 回答

已采纳
?
李晓健

TA贡献1036条经验 获得超461个赞

你的理解应该是window的环境下,这样写this指向全局对象,也就是window,所以你会认为输出11;

实际上在node中全局中的this默认是一个空对象,其实也就是指向module.exports。

查看完整回答
反对 回复 2017-07-28
  • _Nervous
    _Nervous
    那有什么可以编译模拟浏览器的运行环境或者webstom如何修改编译环境
  • _Nervous
    _Nervous
    谢谢大神
  • 李晓健
    李晓健
    这个我也不知道,我都是直接在浏览器里跑,现在chrome也直接支持ES6语法的
点击展开后面1
  • 1 回答
  • 2 关注
  • 1583 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信