const func = () => {
someFunction() // error here
return function someFunction() {
console.log('hello')
}
}
func()
Run Code Online (Sandbox Code Playgroud)
我创建了闭包并想检查func函数内部的提升。每次创建函数声明时,它都会将变量提升到顶部。为什么someFunction不吊?
您的statement 中有一个(命名的)函数表达式。这个函数不是一个函数语句,因此它没有被提升。return
另一个原因是,函数表达式没有名称。这意味着,您不能通过函数外部的名称访问它。函数表达式的名称仅在具有它名称的函数内部可用(例如用于递归)。
| 归档时间: |
|
| 查看次数: |
73 次 |
| 最近记录: |