JavaScript, ссылающийся на синтаксис массива - PullRequest
0 голосов
/ 02 апреля 2019

Каков правильный синтаксис для ссылки на первый элемент в массиве, когда есть нумерованные массивы, как это?

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

heresANumber = 1;
grabAString(heresANumber);

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

Есть ли простой способ указать массив с последовательной нумерацией?

Ответы [ 2 ]

0 голосов
/ 02 апреля 2019

Назначьте эти массивы как свойства объекта, чтобы вы могли использовать нотацию [] для динамических имен свойств

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 голосов
/ 02 апреля 2019

Вы можете взять массив для заказанных товаров.

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

, и прямой доступ с индексом.

Другим решением может быть использование сокращенных свойств в объекте, где имена переменных являются свойствами.Это позволяет получить доступ с помощью комбинированного ключа.

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));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...