什么是闭包?
简单来说,闭包是指可以访问另一个函数作用域变量的函数,一般是定义在外层函数中的内层函数;
为什么用闭包?
局部变量无法共享和长久的保存,而全局变量可能造成变量污染,所以希望有一种机制可以即长久的保存变量又不会造成全局污染;
特点:占用更多内存,不容易被释放;
何时使用?
变量既想反复利用,又想避免全局污染;
如何使用?
1.定义外层函数,封装被保护的局部变量;
2.定义内层函数,执行对外部函数变量的操作;
3.外层函数返回内层函数的对象,并且外层函数被调用时,结果保存在一个全局变量中。