问题描述
- 关于javascript闭包的一点疑问
- function create(){
var arr = new Array();for (var i=0; i<10; i++){ arr[i] = function(num){ return function(){ return num; }; }(i);// (i)有是什么意思?}
解决方案
匿名函数的参数,可以这么理解
var f = function(num){ return function(){ return num; };};arr[i] = f(i);
解决方案二:
javascript 闭包
JavaScript闭包
javascript闭包
解决方案三:
调用匿名函数,并将变量i传递进去,结果是数组每一个子项保存着一个匿名函数的引用,请采纳!
解决方案四:
匿名函数的参数,匿名函数返回值(函数)引用到这个参数,从而形成闭包
解决方案五:
http://www.zhihu.com/question/20019257
http://www.jb51.net/article/24101.htm
时间: 2024-12-03 19:29:13