javascript引用数组语法

问题描述 投票:-3回答:2

当有编号数组时,引用数组中第一个元素的正确语法是什么?

someArray1["someString", "anotherString"];
someArray2["someString", "anotherString"];
someArray3["someString", "anotherString"];

heresANumber = 1;
grabAString(heresANumber);

function grabAString(theNumber){
    var string = 'someArray' + theNumber[0].slice(0,1);
}

有没有一种简单的方法可以指向一个按顺序编号的数组?

javascript arrays string syntax
2个回答
0
投票

将这些数组指定为对象的属性,以便可以将[]表示法用于动态属性名称

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))

0
投票

您可以为订购的商品获取数组。

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));
© www.soinside.com 2019 - 2024. All rights reserved.