在 JavaScript 循环中创建变量

Create variables in a JavaScript loop

本文关键字:创建 变量 循环 JavaScript      更新时间:2023-09-26

我在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]);

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

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

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

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

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;