函数外部访问函数内部的值,正常方式获取不到,只能在函数内部再定义一个函数,再将这个函数返回出去,外部即可获取到函数内部的值
优点:可以定义私有变量,避免变量名冲突
缺点:闭包中的变量会永久保存在内存中,可能会造成内存泄露
主要使用场景:
1、解决定时器第一个参数的函数不能传值的问题
2、用来封装防抖函数
3、封装私有化变量
function sayHello(name) {
var text = name; // 局部变量text
var say = function () {
console.log(text);
};
return say;
}
var say2 = sayHello("lily");
say2();
闭包的理解?
最新推荐文章于 2023-01-31 11:16:10 发布