http://www.open-open.com/lib/view/open1390879109398.html
总结 : 什么时候用闭包 ,当在全局环境中想获取一个方法内部的变量的时候 ,可以使用闭包 ,eg:
function dd () {
var b = "df";
function get_b() {
return b;
}
return get_b;
}
var temp = dd();
alert(temp()); // 输出 df
总结: 什么是作用域链呢, 就是js中变量函数的有效访问范围, 一句话概况, 下面的访问可以访问上面范围的变量, 反正,上面的范围不能访问下面范围的变量,eg:
function f() {
var k = "df";
f1();
function f1() {
var k2 = "fc";
alert("f1---"+k2);
f2();
function f2() {
var k3 = "xt";
alert("f2---"+k2+"--"+k3+"---"+k);
}
}
}
f();