当有编号数组时,引用数组中第一个元素的正确语法是什么?
someArray1["someString", "anotherString"];
someArray2["someString", "anotherString"];
someArray3["someString", "anotherString"];
heresANumber = 1;
grabAString(heresANumber);
function grabAString(theNumber){
var string = 'someArray' + theNumber[0].slice(0,1);
}
有没有一种简单的方法可以指向一个按顺序编号的数组?
将这些数组指定为对象的属性,以便可以将[]
表示法用于动态属性名称
const arrs = {
someArray1 : ["someString", "anotherString"],
someArray2 : ["someString", "anotherString"],
someArray3 : ["someString", "anotherString"]
}
heresANumber = 1;
function grabAString(theNumber) {
return arrs['someArray' + theNumber][0];
}
console.log( grabAString(heresANumber))
您可以为订购的商品获取数组。
function grabAString(theNumber){
return array[theNumber - 1];
}
var someArray1 = ["someString", "anotherString"],
someArray2 = ["someString", "anotherString"],
someArray3 = ["someString", "anotherString"],
array = [someArray1, someArray2, someArray3],
heresANumber = 1;
console.log(grabAString(heresANumber));
高级版本采用索引,它基于零
0, ..., n - 1
并使用索引直接访问。
另一个解决方案是将short hand properties放在变量名称为属性的对象中。这允许使用组合密钥进行访问。
function grabAString(theNumber){
return object['someArray' + theNumber];
}
var someArray1 = ["someString", "anotherString"],
someArray2 = ["someString", "anotherString"],
someArray3 = ["someString", "anotherString"],
object = { someArray1, someArray2, someArray3 },
heresANumber = 1;
console.log(grabAString(heresANumber));