鉴于此函数调用:
var funcs = obj.getClosures([2, 4, 6, 8], function(x) {
return x*x;
});
我有以下功能:
getClosures : function(arr, fn) {
var funcs = [];
var array = arr;
var i = 0;
var l = array.length;
(function(i, array) {
for (; i < l; i++) {
funcs[i] = function(i, array) {
return fn(array[i]);
};
}
}(i, array));
return funcs;
},
我希望能够遍历返回的数组并获得数组中每个项目的平方根值,就像这样:
for (var i = 0; i < arr.length; i++) {
funcs[i]();
}
每次循环的结果:4、16、36、64
我的 funcs 数组不应该在每个索引中都有一个可以使用相关参数值轻松调用的函数引用吗?我哪里做错了?