如何在JavaScript中动态创建变量

Rol*_*and 5 javascript

我正在寻找一种在javascript中动态创建变量的方法

例如

我有一个循环

for (i=0;i<15;i++){
}
Run Code Online (Sandbox Code Playgroud)

现在我需要动态创建变量,例如var"a"+ i表示循环中的eavh值.这可能吗?怎么样?

Que*_*tin 9

由于您正在处理数字,顺序变量 - 使用数组.

var foo = [];
for (var i = 0; i < 15; i++) {
    foo[i] = something;
}
Run Code Online (Sandbox Code Playgroud)


Sea*_*sey 8

如果我们假设你需要几个与每次迭代相关的变量([foo1,bar1],[foo2,bar2] ......)那么有两种方法

使用数组

var foo = [], bar = [];
foo[1] = "foo"; 
bar[1] = "bar";
Run Code Online (Sandbox Code Playgroud)

使用对象

var myVars = {};
myVars["foo" + 1] = "foo";
myVars["bar" + 1] = "bar";
Run Code Online (Sandbox Code Playgroud)

最后一个也可以写成

 myVars.bar1 = "bar";
Run Code Online (Sandbox Code Playgroud)

不要像有人建议的那样使用eval.