概念
1.一个函数可以把它自己内部的语句(函数),和自己声明时所处的作用域,变量一起记录,封装成了一个密闭环境.我们称为“闭包” (Closures)。
运用
return 返回.
var a = 333;
function inner(){
console.log(a);
}
return inner; //outer返回了inner的引用
}
var inn = outer(); //inn就是inner函数了
inn();
性质
1.函数能够持久保存自己定义时的所处环境,并且即使自己在其他的环境被调用的时候,依然可以访问自己定义时所处环境的值
2.var inn = outer();
每次重新引用函数,定义闭包的时候,闭包是全新的。
特性
1.函数嵌套函数
2.函数内部可以引用外部的参数和变量
3.参数和变量不会被垃圾回收机制回收
好处
1.希望一个变量长期驻扎在内存中
2.避免全局变量的污染
3.私有成员的存在
语法
(function(){})()