javascript闭包(3)
2012-04-06 13:05
169 查看
View Code
<script language="javascript" type="text/javascript"> /* 一个简单的计数器 */ function counter(iden,addi){ return function(){ iden=iden+addi; return iden; } } var c1=counter(0,1); var c2=counter(10,-1); for(var i=0;i<10;i++){ c1(); } /*Javascript变量在for() if() switch() 等等没有作用域 alert(i) //输出:10 */ for(var i=0;i<10;i++){ alert(c2()); } /* 外部环境的读写和闭包出现在函数体内的顺序没有关系 理解:createClosure2()函数return a时才创建Function对象a, 变量x在创建对象之前,所以跟顺序没有关系 */ function createClosure(){ var x=10; return function(){ return x; } } function createClosure2(){ function a(){ return x; } var x=10; return a; } </script>
相关文章推荐
- 深入理解Javascript闭包(closure)
- 深入理解Javascript闭包(closure)
- JavaScript闭包在封装函数时的浅见
- 深入理解JavaScript闭包(closure)
- JavaScript闭包定义及原理
- 跟据一段代码浅谈Javascript闭包
- Javascript闭包【转载】
- 转:深入理解Javascript闭包
- 深入理解Javascript闭包(closure)
- 深入理解Javascript闭包
- javascript闭包
- Javascript闭包详解(参阅第7章)
- Javascript闭包(closure)1
- 深入理解Javascript闭包(closure)
- javascript闭包的用途
- 理解javaScript闭包
- javascript闭包
- Javascript闭包(Closure)
- Python闭包与javascript闭包比较
- 深入理解javascript闭包(一)