函数体预编译过程: 1. 创建AO对象(Activation Object)--> 生成执行期上下文 2. 找形参和变量声明,将形参和变量声明作为AO对象的属性名,值为undefined 3. 将实参和形参值统一 4. 在函数体里找函数声明,作为GO对象的属性名,值为函数体 --> 注意:函数表达式 ≠函数声明
全局预编译过程: 1. 生成GO对象(Global Object)=== window 2. 找变量声明,作为GO对象的属性名,值为undefined 3. 找函数声明,作为GO对象的属性名,值为函数体
原文:https://www.cnblogs.com/seveinn/p/11801775.html