闭包

什么是闭包 ?
函数嵌套函数,内部函数可以引用外部函数的参数和变量,参数和变量不会被垃圾回收机制收回。

function aaa(a){
var b = 5;
function bbb(){
a++;
b++;
alert(a);
alert(b);
}
return bbb;
}
var ccc = aaa(2);
ccc();
ccc();
改写成封闭函数的形式:
var ccc = (function(a){
var b = 5;
function bbb(){
a++;
b++;
alert(a);
alert(b);
}
return bbb;

})(2);

ccc();
ccc();

用处 :
1、将一个变量长期驻扎在内存当中,可用于循环中存索引值。


......


  • 111

  • 222

  • 333

  • 444

  • 555

2、私有变量计数器,外部无法访问,避免全局变量的污染。

你可能感兴趣的:(闭包)