启示
- 理解闭包可以看做是某种意义上的重生。
- 掌握闭包将会功力大增。
- JavaScript中闭包无处不在。
实质问题
闭包使得函数可以继续访问定义时的词法作用域。
现在我懂了
循环和闭包
- 在看懂for循环中的闭包问题时,我们首先要知道一点,那就是延迟函数的回调通常是在循环结束的时候才执行,即使setTimeout的第二个参数是0.
- 所以下面的循环回输出5个6
- 尝试通过立即执行函数来解决这个问题
- 尝试1
重返块作用域
模块
- 模块模式要具备两个必要条件
现代的模块机制
- 本小节主要讲了模块define的源码,不做深入讨论。
未来的模块机制
- 关于模块化的内容,请参考这个文档
ES6—49:模块化
小结