一.什么是闭包? 1.概念:函数和函数内部能访问到的变量的总和就是一个闭包。
2.代码如下:
functon f1(){
var local = '变量'
function f2(){
console.log(local)
}
}
//local变量和f2函数就是一个闭包
二.闭包的用途?
1.闭包的用途:
闭包常常用来间接访问一个变量,或者说用来隐藏一个变量。
2.代码举例:
!function(){
var lives = 100
window.life = function(){
lives += 1
}
window.die = function(){
lives += 1
}
}()
上面的代码中有俩闭包:
第一个是,变量lives 和 window.life后面的那个函数
第二个是,变量lives和 window.die后面的那个 函数
三.闭包的缺点: 在IE浏览器中使用完闭包,回收不了闭包里面的变量