到底什么是闭包呢
javascript提供存储变量的方法和能力,当我们在一个页面操作某个数据的时候,总是希望在页面不刷新的情况下可以保存下这个变量。
优点
1.函数嵌套函数,可以通过内嵌函数对函数中的局部变量进行访问; 2.可以通过闭包封装私有的方法和定义具有共享意义的变量;
缺点
1.导致部分局部变量没有因为执行上下文而被销毁,使得内存消耗大; 2.容易造成内存泄漏;
解决方法
let add = function() add = null // 释放对闭包的引用
最真实的例子
1.定时器函数 2.vue单页面的data(){}方法