函数七重关之四(闭包)
function add(){return function(){}
}
function test(){var a = 0;return function(){console.log(a);}
}
这样子调用:test()();
这就是闭包!
这样做有什么好处呢?
//先获取这个内部函数
var inner = test();
//第一次调用内部函数
inner();
//第二次调用内部函数
inner();
//第三次调用内部函数
inner();
利用闭包操作就可以减少很多不必要的全局变量。
全局作用域是一块公共区域,如果为了某一个单一的功能二定义一个全局变量,则会导致全局变量过多,代码就变得一团糟了。因此这种情况下,还是要优先考虑使用闭包。