闭包:函数嵌套函数,内部函数被外部函数返回并保存下来时,就会产生闭包
function fn(a){
return function(){
console.log(a)
}
}
var f = fn('abcde');
f();
特点:属于可以重复利用变量,并且这个变量不会污染全局的一种机制,这个变量是一直保存在内存中,不会被垃圾回收机制回收
特点:闭包较多的时候,会消耗内存,导致页面的性能下降,在IE浏览器中才会导致内存泄露
使用的场景:防抖、节流、函数嵌套函数避免全局污染的时候