是否可以使用带有字符串的变量来标识另一个变量?

Is it possible to use a variable with a string to identify another varible?

我想知道是否可以使用一个变量中的字符串来标识另一个具有数组的变量?

我正在 chrome 上运行代码。

查看代码了解我的意思。

谢谢!

var box_1 = new Array()

var boxid;

boxid = "box_1";

boxid.push("Is this possible?");

答案在数组内:

var box_1 = new Array()
var boxid;
boxid = "box_1";
this[boxid].push("Is this possible?");
this[boxid].push("Yes it is (but your probably should not)");
console.log(box_1);

如果你在浏览器上是运行这个,你可以通过属性这样的访问器访问变量

var box_1 = new Array()

var boxid;

boxid = "box_1";

window[boxid].push("Is this possible?");

输出:

box_1 < ["Is this possible?"]

经典方式

使用一个对象来引用你的数组

let obj = {
    box1 : []
};
obj['box1'].push('ok!')
console.log(obj.box1)

不好

小心eval,避免它

let box1 = []
eval('box1.push("brrr")')
console.log(box1)