之前面试的时候一直问闭包,我自己也记录一份,以备不时之需
闭包: 能够访问其他函数内部变量的函数就是闭包。
js中,的理解就是定义在函数内部的函数。
用途
1.读取函数内部的变量。
2.让这些变量始终在内存中。
注意的点;
1.内存泄漏问题,所以不能滥用闭包,否则会造成页面的问题。解决方法就是在退出函数之前,将不使用的局部变量全部删除。
2.闭包会在父函数外部,改变父函数内部函数变量的值。所以,如果你把父函数当做对象使用,把闭包当做它的公共方法,把内部变量当做它的私有属性,这是一定要小心,不要随便改变父函数内部变量的值。