我试图了解在JavaScript引擎的编译阶段中函数和变量声明,变量赋值和函数定义的优先顺序如何与在编译阶段进行的其他事情交互。请告诉我这是否正确:


分配内存并设置对任何功能标识符的引用
分配内存并设置对任何变量标识符的引用
给变量赋值
对于每个函数,创建一个新的执行上下文和作用域,并添加对父作用域的引用

最佳答案

仅在此处引用当前标准,实际实现可能会有所不同:

15.1.11Runtime Semantics: GlobalDeclarationInstantiation ( script, env )

10-07 21:10