NFE(具名函数表达式)的问题
群里小伙伴讨论了这么一个问题:
1 | const a = function b() { |
为什么这里打印的 b
为 b
函数,而不是 1
?
声明提前:一个声明在函数体内都是可见的,函数声明优先于变量声明;函数表达式
如果有 name
的话,这个 name
是 不可删除且为只读
。
资料查阅:
- 函数(Functions)
- 作用域链(Scope Chain)
- 变量对象(Variable object)
- 执行上下文(Execution Context)