一、什么是闭包
1.函数内部的可以读取外部的全局变量,但是函数外部不能读取函数内部的局部变量。为了能够在函数外部读取到函数内部的局部变量,在内部再定义一个函数。
2.闭包就是将函数内部和函数外部连接起来的一座桥梁。
function f1(){
let n=999;
function f2(){
alert(n);
}
return f2;
}
let result=f1();
result(); // 999
3.缺点:使用闭包会占内存资源,过多的使用闭包会导致内存溢出等。
4.闭包的主要用途有两个:
4.1保护函数内的变量不受全局访问或修改。避免全局污染,将变量设置为私有变量。
4.2使得这些变量的生命周期延长,即使父函数执行完毕,这些变量仍然不会被垃圾回收。
二、应用
1.用于防抖
2.用于节流
新创建了前端公众号,【码农生存指南】
欢迎同行互关交流!关注后私信我返关~
750

被折叠的 条评论
为什么被折叠?



