Javascript:按名称查找数组

Kev*_*ody 2 javascript arrays

我有一些js数组,我想按名称找到数组.例如:

arr1 = [1,2,3];
arr2 = [3,4,5];
Run Code Online (Sandbox Code Playgroud)

并像这样访问它们:

var intNum = 2;
var arrName = 'arr' + intNum;

arrName[0]; // equals 3
Run Code Online (Sandbox Code Playgroud)

这可能吗?

谢谢,凯文

Sea*_*sey 5

这是可能的,但我建议你将这些数组作为对象的属性,这使它更容易

var arrays {
    arr1 : [1,2,3],
    arr2 : [4,5,6]
}

var arrNum = 2;
var arr = arrays["arr" + arrNum] // arrays.arr2
Run Code Online (Sandbox Code Playgroud)

可以使用.运算符和使用["propname"]表示法的命名项来访问对象的属性.

不建议使用eval或诉诸于使用上述技巧window.

Eval'ing通常是构造不良代码的标志,并且使用窗口依赖于窗口是全局范围的变量对象 - 这不是任何规范的一部分,并且不一定适用于跨浏览器.