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

关于ES6函数作用域问题

关于ES6函数作用域问题

淡水狗 2018-05-28 19:24:29
在深入浅出ES6中函数扩展章节中,提到函数参数的默认值是一个函数时,也会形成一个单独的作用域。匿名函数里面的foo指向函数外层代码如下:foo指向外层的全局变量foo,因此输出outer。let foo = 'outer'; function bar(func = x => foo) {   let foo = 'inner';     console.log(func()); // outer   } bar();然而 为什么控制台输出的结果还是 inner ???
查看完整描述

1 回答

已采纳
?
周剑秋

TA贡献13条经验 获得超4个赞

我打印是outer

查看完整回答
反对 回复 2018-05-28
  • 淡水狗
    淡水狗
    我直接复制过去了 还是inner 配置的是ES6的环境
  • 周剑秋
    周剑秋
    你看看你编译后代码变成啥了
  • 周剑秋
    周剑秋
    你这个必须在支持es6的环境去跑,而不是配置的编译环境,都给你解析成es5了,有些概念上的东西就是会有偏差
点击展开后面1
  • 1 回答
  • 0 关注
  • 939 浏览
慕课专栏
更多

添加回答

举报

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