经典写法:
const add = function (){
var count
return () => {
count += 1
}
}()
闭包就是一个函数 f 和专属于这个函数的变量 a 的组合。
如果变量 a 放在全局,则任何人都可以访问。
如果变量 a 直接放在函数 f 内部,则每次对函数的调用都会重新创建变量 a,也不符合要求。
这样的结果是定义的变量不会污染全局环境,也不会被别人访问或修改,只能通过返回的函数 f 进行访问。
应用场景:防抖、节流。
网友评论