js的变量的作用域分为全局变量和局部变量,函数内部的变量称为局部变量
在函数的内部可以访问到全局变量,但是函数外部无法访问函数内部的变量
闭包可以解决无法访问函数内部的变量的问题,且可以隐藏这个变量,不被外部直接访问
闭包:函数内部的子函数可以访问函数内部的局部变量,所以闭包又称为函数内部的函数
function f1(){
var n=999;
function f2(){
alert(n);
}
return f2;
}
var result = f1();
result(); // 999