5

可能重复:
从字符串中获取变量

我有一个名为myArray的数组和一个名为myVar的变量。myVar 变量保存一个值“myArray”(myVar 的值等于数组名称)。我可以使用 myVar 变量以某种方式访问​​数组元素吗?一些代码来解释我的意思:

var myArray = {1, 2, 3};
var myVar = "myArray";

谢谢!

4

2 回答 2

7

这里的关键是括号符号

如果myArray是全局的

var myArray  = ["1","2","3"];
var myVar = "myArray";
console.log(window[myVar]);

最好使用命名空间

var myData = {};
myData.myArray  = ["1","2","3"];
var myVar = "myArray";
console.log(myData[myVar]);
于 2012-12-19T15:02:10.873 回答
3

如果您的数组 ( myArray) 是一个全局变量,那么您可以使用window[myVar]. 如果它是一个局部变量,那么唯一的方法就是使用eval(myVar)(或其类似物)。

arr = window[myVar] // assuming myArray is a global variable
arr[0] = 5 // same as myArray[0] = 5
于 2012-12-19T15:02:59.270 回答