我有多个变量,可以说:
var1
var2
var3
...
var100
,并希望为其分配相同的功能,但要使用不同的参数(变量的“数字”),如下所示:
var1 = myFunction(1);
var2 = myFunction(2);
var3 = myFunction(3);
...
var100 = myFunction(100);
是否可以通过 for 循环来执行此操作,还是必须手动执行?我可以使用jQuery。
还是只使用数组会更好?如果是这样,是否有可能按照我的要求去做?
答案 0 :(得分:2)
在这里,数组是正确的方法。 例如,在ES5中:
var array = [];
for(var i = 0; i < 100; i++) {
array.push(myFunction(i));
}
或在ES6中:
Array.from({length: 100}, (_, i) => myFunction(i));
或
[...Array(100)].map((_, i) => myFunction(i));
ES5示例一个接一个地推送它们,ES6示例使用map
和一个arrow function。
答案 1 :(得分:1)
您可以使它们成为更大对象的一部分,请检查以下示例:
function myFunction (i) {
// your logic here
return i;
}
// create array of length 100
var varsArray = Array.from({length:100})
.map(function(e,i){ // map each element to corresponding function call
return myFunction(i+1)
});