我有一些js数组,我想按名称查找数组。例如:
arr1 = [1,2,3];
arr2 = [3,4,5];
然后像这样访问它们:
var intNum = 2;
var arrName = 'arr' + intNum;
arrName[0]; // equals 3
这可能吗?
谢谢, 凯文
答案 0 :(得分:5)
这是可能的,但我建议你将这些数组作为对象的属性,这使它更容易
var arrays {
arr1 : [1,2,3],
arr2 : [4,5,6]
}
var arrNum = 2;
var arr = arrays["arr" + arrNum] // arrays.arr2
可以使用.
运算符和使用["propname"]
表示法的命名项来访问对象的属性。
不建议使用eval
或在window
上使用上述技巧。
答案 1 :(得分:3)
window['arr'+intNum]
所以
arr1 = [1,2,3];
arr2 = [3,4,5];
intNum=2;
alert(window['arr'+intNum][1]); //will alert 4