javascript积累七
来源:互联网 发布:mac系统cad字体设置 编辑:程序博客网 时间:2024/06/07 20:05
javascript高级程序设计里看的
function createFunctions(){ var result = new Array(); for(var i=0;i<10;i++){ result[i] = funciton(){ return i; }; } return result;}
最终result数组里的每个无素都为10,因为作用域链的关系,闭包只能取得包含函数中任何变量的最后一个值。
要想返回0、1、2.……
可以这样修改下:
function createFunctions(){ var result = new Array(); for(var i=0;i<10;i++){ result[i] = functions(num){ return function(){ return num; } }(i); } return result;}
上面通过创建另一个匿名函数强制让闭包的行为符合预期
0 0
- javascript积累七
- JavaScript积累
- javascript积累
- javascript积累
- javascript积累
- javascript积累
- javascript 积累
- javascript 积累
- JavaScript积累
- 面试题积累(七)
- javaScript(七)
- javascript 实用技巧积累
- 7-Javascript积累
- JavaScript个人学习积累
- JavaScript相关积累
- javascript常用知识点积累
- javascript点滴细节积累
- javascript 代码积累
- 编辑文章 - 博客频道 - CSDN.NET
- 关于SpringMVC(2)
- 主函数
- iOS开发 多线程 NSThread的使用
- 安装与配置MyEclipse&Tomcat
- javascript积累七
- MFC类与对应的头文件
- Android ORM框架GreenDao用法
- POJ1363
- 【甘道夫】基于scikit-learn实现逻辑回归LogisticRegression
- [数据结构][Leetcode]翻转二叉树
- Android Loader
- vc遍历网页表单并自动填写提交
- 连接本地Oracle 11g时 ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务