-
概念:函数嵌套函数,且内部函数调用父级作用域的变量
- 函数套函数
- 子函数使用父函数中的变量
-
作用:实现变量的私有化
function father () {
var i = 0
return function () {
i++
console.log(i);
}
}
var fn = father()
fn()
fn()
fn()
-
使用场景
-
循环里面的异步代码打印索引值会有bug,用闭包可以解决(不用说)
-
防抖和节流
-
柯里化
- 柯里化是用来把一个函数从多参函数转换成单参函数,好处就是可以实现参数复用
-
-
缺点 会导致内存泄露
-
解决办法:闭包用完 赋值为null