使用闭包主要是为了设计私有的方法和变量。闭包的优点是可以避免全局变量的污染,缺点是闭包会常驻内存,会增加内存使用量,使用不当很容易造成内存泄漏。
在js中,函数即闭包,只有函数才会产生作用域的概念
闭包有三大特性:
1. 函数嵌套函数
2. 函数内部可以引用外部的参数和变量,避免全局变量的污染
3. 参数和变量不会被垃圾回收机制回收,就是引起内存泄漏