第3章 第4节 闭包作用域链工作流程
闭包作用域链工作流程
作用域,就是变量起作用的区域(范围)。
- 全局作用域(在函数和 {} 之外)。
- 函数作用域(在函数内部)。
- 块级作用域(ES6新增,在 {} 中)。
当浏览器想要运行JavaScript代码时就调用这个容器。
在这个容器中,有两个组件:1.内存组件;2.代码组件。
浏览器创建了一个有两个组件的全局执行上下文,这两个组件分别是内存组件和代码组件。详细介绍在前一个博客
浏览器将分两阶段执行这段JavaScript代码:
1> 内存创建阶段
2> 代码执行阶段
1.创建AO对象
2.找形参和变量声明,将变量和形参作为AO属性名,值为undefined
3.将实参和形参统一
4.在函数体里面找函数声明,值赋予函数体