循环中有多个相似的命名变量

时间:2018-10-01 21:23:25

标签: javascript for-loop variables

我有多个变量,可以说:

var1
var2
var3
...
var100

,并希望为其分配相同的功能,但要使用不同的参数(变量的“数字”),如下所示:

var1 = myFunction(1);
var2 = myFunction(2);
var3 = myFunction(3);
...
var100 = myFunction(100);

是否可以通过 for 循环来执行此操作,还是必须手动执行?我可以使用jQuery。

还是只使用数组会更好?如果是这样,是否有可能按照我的要求去做?

2 个答案:

答案 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)
                      });