厚积薄发---从此再也不用担心闭包问题

来源:互联网 发布:安卓版本 知乎 编辑:程序博客网 时间:2024/05/22 13:07

说在前面

至此,关于JavaScript闭包问题我已经写了两个系列的文章。可能你会很惊讶,为了一个知识点,写了两个系列文章,有必要吗? 我会回答有必要,而且很有必要,因为它不仅仅是一个知识点。

两个系列文章+一个总结篇

第一个系列的文章是参考了网上流行的博客,比如阮文峰老师的闭包系列文章,王福朋的闭包系列文章,还有搜索排名在百度前三页的各个博客文章。但我得说句实话,这个系列的文章大多数的观点是正确的,但不得不说,对有些关键点的解释是不对的。但是,这个系列的文章浅显易懂有大量的实例支撑,且对较主要的知识点的解释是没问题的。读完这个系列你会对闭包问题有一套自己的理解体系,但是这个理解体系可能用到实践中会有些复杂,不能得心应手的应用它解决问题。

第二个系列的文章是翻译了国外大神Dmitry Soshnikov的系列文章,但可惜是全英文的,阅读起来较困难,即使有中文版,但有些中文版的翻译需要翻墙来找,我让托我的朋友翻墙找到了相关的中文翻译,并把它写成博客发出来和大家分享。但这个系列的文章虽然语言并不苦涩,但是从底层解释的,而且对有些东西的扩展太大,容易使人迷失方向。但是这个系列的文章里的知识可以放心的去相信,没有问题。

第一个系列更多的是从感性的角度去让大家知道闭包是个什么东西,为什么是这样;第二个系列更多是从理性的解读去解释闭包是如何实现的,为什么会有闭包,js引擎是怎么处理闭包的。

所以我建议可以先读第一个系列,再读第二个系列。先读第一个系列会让你初步建立一下对闭包的认识,再读第二个系列会让你纠正在第一个系列中建立的某些错误的认知,并且能够完全理解闭包是什么。

读完两个系列,如果对闭包仍旧有些问题,请看总结篇,在那里,你会彻底明白闭包原来很简单!

两个系列+一个总结篇 文章链接

下面是这两个系列文章的链接:

第一个系列文章:《javascript执行上下文、作用域与闭包》

javascript执行上下文、作用域与闭包(第一篇)—执行上下文

javascript执行上下文、作用域与闭包(第二篇)—作用域

javascript执行上下文、作用域与闭包(第三篇)—自由变量与作用域链

javascript执行上下文、作用域与闭包(第四篇)—作用域与执行上下文

javascript执行上下文、作用域与闭包(第五篇)—一个例子的理解

javascript执行上下文、作用域与闭包(第六篇)—闭包

javascript执行上下文、作用域与闭包(第七篇)—关于闭包典型例子的理解

第二个系列文章:《[JavaScript]ECMA-262-3 深入解析》

[JavaScript]ECMA-262-3 深入解析.第一章.执行上下文

[JavaScript]ECMA-262-3 深入解析.第二章.变量对象

[JavaScript]ECMA-262-3 深入解析.第三章.作用域链

[JavaScript]ECMA-262-3 深入解析.第四章.函数

[JavaScript]ECMA-262-3 深入解析.第五章.闭包

一个总结篇:

总结篇—闭包问题从此再不难

总结

可能你看到要读两个系列文章这么多,哪有那么多的时间和耐心,但我要告诉你,如果你想要了解这个闭包这个知识,就要付出这么多的时间和耐心,做什么事都是这样。

如果你想要成为你想成为的人,你就得努力,而且还得坚持,如果你坚持不下去了,你就放弃,如果你放弃了,你就不要抱怨。

这段话和大家共勉。

阅读全文
0 0