JS中的闭包简单来说就是把外部作用域中的局部变量封闭起来,
被封装起来的变量与封闭他的函数对象拥有相同的生命周期。
闭包的特性:函数嵌套函数;函数内部可以引用外部的参数和变量;参数和变量不会被垃圾回收机制回收;
function fn(){ var n=10; function add(){ console.log(n*2); } return add; } fn()();
也可以创建变量来执行;
function fn(){ var n=10; function add(){ console.log(n*2); } return add; } var a=fn(); a();根据函数的访问,函数内部的可以访问函数外部。而函数外部却拿不到函数里面的内容,所以要在外部return内部那个函数;