《你不知的javascript》-作用域和闭包


原本的思维导图笔记xmind文件已丢失, 记录一个markdown版。

作用域和闭包

作用域和闭包

1作用域是什么

编译原理

理解作用域

作用域嵌套

异常

2词法作用域

词法阶段

欺骗词法

3函数作用域和块作用域

函数中的作用域

隐藏内部实现

函数作用域

4提升

包括变量和函数在内的所有声明都会在任何代码被执行前首先被处理

函数优先

5作用域闭包

启示 - 闭包是基于词法作用域书写代码时所产生的自然结果

实质问题

现在我懂了

模块

动态作用域

this的表亲

词法作用域最重要的特征是它的定义过程发生在代码的书写阶段

动态作用域不关心函数和作用域是如何声明以及在何处声明,只关心它们从何处调用