let a =1function fn1() { function fn() { console.log(a) } fn()} fn1() // 1那为什么这个能打印出a难道是函数的代码块不算代码块?
1 回答
繁花不似锦
TA贡献1851条经验 获得超4个赞
let只在他所在的代码块内有效。
但同时可以访问作用域链
在函数fn中的a能够获得作用域链上的a (即可以访问最外层的a), 所以console.log(a) 能输出1
添加回答
举报
0/150
提交
取消
