js箭头函数和const声明的问题

遇到一个箭头函数很有意思的问题:

clipboard.png

打印出的结果

clipboard.png

执行fun2()方法时,输出的竟然是空值!
当我把const变成var 声明的时候,这个情况就消失了。

clipboard.png
这种结果变正常之后,我在改成const,一切正常。只有第一次为const声明的时候有问题。不清楚什么状况,求大神解释一下,谢谢!


不存在浏览器没有刷新的问题,用的是Chrome最新版本浏览器

阅读 2.2k
2 个回答
当我把const变成var 声明的时候,这个情况就消失了。

因为var定义到window上变成window.name

只有第一次为const声明的时候有问题。

你打印一下window.name,或者把tab关掉,你发现又变成空值了。刷新没用,因为浏览器(chrome)不会因为你刷新就换一个window

const || let并不是挂载声明到window的

debugger一下是挂载在Script这个域的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题