标签:
一句话:有权访问另一个函数作用域内变量的函数都是闭包。
有权访问另一个函数作用域内变量的函数都是闭包。
有权访问另一个函数作用域内变量的函数都是闭包。
说三遍的都是真理!
不多说看代码:
function a() { var b = 0; function c() { alert(b++); } return c; } var d = a(); d();//b=0; d();//b=1;
如上是一层嵌套,下面是两层:
function a() { var b = 0; function c() { function f() { alert(b++); } return f; } return c; } var d = a(); d(); d();
浏览器并没有弹窗而是打印出了
function f() {
alert(b);
}
而把 b(); 改成 b()(); 则可以正常反应。
* ()是指执行函数的意思。
标签:
原文地址:http://www.cnblogs.com/liu-liu/p/5490318.html