在JavaScript循环中创建变量

时间:2014-11-21 20:31:09

标签: javascript php arrays

我在PHP中有一个数组

vars = array('Date','Name','Number');

使用“vars”数组我可以使用列表中的名称创建更多数组:

for($i = 0;  $i < count($vars); $i++){
 ${$vars[$i]} = "Something";
}

现在,我在JavaScript中有一个数组,我想做同样的事情:在循环中使用列表名称创建变量。这个变量将是数组,我不能对所有变量使用公共数组。我该怎么办?

我知道在JavaScript中可以做“变量”变量:

var obj = {}
obj.foo = 42;

var bar = 'foo';
console.log(obj[bar]);

但我不知道如何在另一个数组的循环中使用它

2 个答案:

答案 0 :(得分:1)

您可以在全局上下文中使用this来设置全局变量。

$vars = ['Date','Name','Number'];
for(var $i = 0;  $i < $vars.length; $i++){
  this[$vars[$i]] = "Something";
}

答案 1 :(得分:0)

好的,我终于找到了解决方案

variables = ["Name1", "Name2", "Name3"];

for (var i = 0; i < variables.length; i++){
  window[variables[i]] = new Object();
  window[variables[i]] = [1, 2, 3];   
}

document.write(Name1) // It shows 1 2 3;