function test(){
var num = 1;
return function test1() {
alert(num);
}
}
test()();
1,让函数内部申明的变量一直保存在内存中,不被垃圾回收机制清除;
2,能够读取函数内部申明的变量;
3,能够避免全局变量污染;
缺点:
由于闭包申明的变量会一直在内存里面存在,如果使用不合理,会造成内存泄密,浏览器性能大大降低,所以在使用完后对不需要的变量进行清除。