1.闭包是指函数在创建时保留了对其定义作用域的引用。
闭包在javascript的最常见形式是函数嵌套函数,內部函数访问外部函数的变量。
function outerFunction(){
let counter = 0
return function innterFunction(){
counter ++
console.log(counter)
}
}
const increment = outerFunction()
increment() // 1
increment() // 2
2 闭包导致的内存泄露的场景
a、 未清理的事件监听
b、 引入变量的定时器没有清理
c、 循环引用