闭包 自我理解

闭包是什么:

是保护并重用局部变量的机制

为什么用闭包:

全局变量:优点是随处可用,可重用,但容易被污染
局部变量:优点是仅在函数内用,不容易被污染,但不能被重用
什么时候使用闭包:
希望重用一个变量,又不希望被污染时

如何使用

定义受保护的局部变量
定义内层函数,专门用来操作受保护的变量
定义外层函数,将受保护的变量和操作变量的函数封装起来,外层函数将内层函数返回到外部

判断:

1.先找受保护的变量和内层函数,画简图
2.同一次外层函数调用,返回的多个内层函数,共享同一个闭包变量
3.多次外层函数的调用,会创建多个闭包,多个闭包之间彼此毫无关系

闭包会占用内存,解决方法是:使用完之后立即释放

释放方法:getNum=null
会使内层的小函数对象释放,进而导致outer的AO被释放,被占用的内存就会被释放

猜你喜欢

转载自blog.csdn.net/weixin_45663264/article/details/103452863
今日推荐