闭包可以做什么
1 防止全局变量的污染
2 防止变量被修改
3 可销毁
闭包的条件
1 一个函数的返回值是函数
2 内部函数可以访问外部变量
3 外部无法修改内部函数
闭包的例子
function fn1 () {
let a = 100
function fn2 () {
a--
console.log(a)
}
}
let newFn = fn1()
newFn()
1 防止全局变量的污染
2 防止变量被修改
3 可销毁
1 一个函数的返回值是函数
2 内部函数可以访问外部变量
3 外部无法修改内部函数
function fn1 () {
let a = 100
function fn2 () {
a--
console.log(a)
}
}
let newFn = fn1()
newFn()