一:定义
一个作用域可以访问另一个函数内部的局部定量,或者说一个函数(子函数)访问另一个函数(父函数)中的变量,那么这个变量所在的函数我们称之为闭包函数.
二:闭包有以下几个特点:
- 闭包可以访问外部函数的变量和参数,即使外部函数已经执行完毕。
- 闭包在创建时会保存其词法作用域(包括外部变量和函数),使其能够长期存在。
- 闭包可以修改外部函数的变量。
闭包的主要作用
延伸ke变量的作用范围,闭包函数中的变量会等所有函数都调用完了之后他才会销毁闭包,可能会造成内存泄漏.
如何解决:用完之后手动释放,在函数外层底部手动设置该变量值为null,避免循环引用该变量