摘要:
和其它的大多数现代编程语言一样,JavaScript也采用词法作用域,也就是说,函数的执行依赖于变量作用域,这个作用域在函数定义时就决定的,而不是函数调用时决定的(很简单这样理解,只要有Function(),就会有闭包),为了实现这种词法作用域,JavaScript函数对象的内部状态不仅含有函数的代码逻辑,还必须引用当前的作用域(形象的比喻是这样的:你要想和你的意中人商量终生大事,一定要先过岳父岳母这一关,娶其中之一中者,出动全家也).函数对象可以通过作用域相互关联起来,函数体内部的变量都可以保存在函数的作用域内,这样的特性就叫闭包。 以书上两个例子:例一:var scope = " 阅读全文