我有一个任意值的数组。我写了一个函数,将数组转换为返回原始值的函数数组,所以我不会调用 a[3],而是调用 a3。
这是我的代码不起作用?代码。它给出了这个错误Cannot call method '1' of undefined
。
var numToFun = [1, 2, { foo: "bar" }];
var numToFunLength = numToFun.length;
function transform(numTo) {
for (var i = 0; i < numToFunLength; i++) {
(function(num){
numTo.unshift(function() {
return num;
});
}(numTo.pop()))
}
}
var b = transform(numToFun);
console.log(numToFun);
console.log(b[1]());