闭包

什么是闭包
函数嵌套函数,内部函数可以引用外部函数的参数和变量,参数和变量不会被垃圾回收机制收回;
闭包的用途:可以存循环的索引值、做私有变量计数器

一般写法

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、私有变量计数器,外部无法访问,避免全局变量的污染

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