第142天 请描述下函数的执行过程
首先会产生一个函数执行环境,然后js引擎会把这个执行环境放到函数调用栈中。
函数开始执行,根据代码顺序执行,遇到变量赋值时, 给对应的变量赋值。
函数执行完毕后,局部活动对象就会被销毁,内存中仅保存全局作用域。
函数创建的时候会保存父级变量对象到自己的scope属性下
函数执行不代表立即执行
函数会创建一个执行上下文
    执行上下文的作用是:
        1.  确定this指向
        2. 创建词法变量
        3. 创建变量环境组件 -- 全局变量
大致过程如下:
1:创建函数,生成函数作用域
2:创建函数的执行上下文,压入执行上下文栈中
3:将函数的作用域复制给函数的执行上下文
4:生成活动对象,声明函数、变量、加入形参
5:将活动对象,放到作用域的最顶端
6:执行函数
7:执行栈 弹出函数执行上下文
Most helpful comment
首先会产生一个函数执行环境,然后js引擎会把这个执行环境放到函数调用栈中。
函数开始执行,根据代码顺序执行,遇到变量赋值时, 给对应的变量赋值。
函数执行完毕后,局部活动对象就会被销毁,内存中仅保存全局作用域。