什么是闭包
闭包
就是可以访问其他函数内部变量的函数,在一个函数里定义另一个函数就会产生闭包,子函数可以访问父函数中的局部变量。
为什么要使用闭包
(1)闭包可以让函数内外部连接起来,可以在函数外部间接地访问到函数内部的局部变量
(达到隐藏变量的目的)。
(2)使用闭包可以让变量反复使用
(局部变量不能共享和长久保存),又不会造成全局污染
(全局变量可能造成全局污染)。
闭包的优缺点
优点:减少全局变量的使用
,避免全局污染;具有封装性
,可实现类和继承。
缺点:闭包会占用内存
(把函数变量保存在内存中),使用过多会出现内存溢出
。解决方法:在退出函数前将不使用的局部变量删除)。