什么是闭包
当内部函数 在定义它的作用域 的外部 被引用时,就创建了该内部函数的闭包 ,如果内部函数引用了位于外部函数的变量,当外部函数调用完毕后,这些变量在内存不会被 释放,因为闭包需要它们.
闭包的用途
- 提供内部变量给外部访问
- 把父函数的变量保存在内存中
参考
http://www.gracecode.com/posts/2385.html
https://developer.mozilla.org/en/Core_JavaScript_1.5_Guide/Working_with_Closures
个人感觉只要函数中引用了不在自身scope内的变量时,就构成了一个Closure.