У меня есть умноженные массивы и переменная selector
, теперь я хочу выбрать и отобразить соответствующий массив в консоли, например: if (selector == 1) {console.dir(array1)};
Тем не менее, я чувствую, что многие, если предложения, чтобы выбрать массив, являются неэффективными, и мне нужен лучший подход.
Вы можете иметь массив массивов и использовать его (ваш селектор - это в основном целочисленный индекс массива, который вы хотите в основном массиве):
var masterArray = [ [1,2] , [3,4] ];
var selector = 1;
console.log(masterArray[selector]) //logs the second item [3,4]
console.log(masterArray[selector - 1]) //logs the first one [1,2] - use this if your selector is not zero indexed
EDIT: Разработка комментария @Xufox по вопросу
Вы также можете использовать объект и получить доступ к своим массивам следующим образом:
var myArrays = {
array1: [1,2],
array2: [3,4]
}
var selector = 1;
console.log(myArrays['array'+selector]) //[1,2]
Вместо этого я рекомендую использовать объект. Вот так:
var selectors = {
sel1: [
0,
5
],
sel2: [
5,
6
]
};
var i = 1;
console.log(selectors["sel" + i]);
You can create nested arrays(array of arrays) in javascript like the way below if you want:
var arr=[];
for(var i=0;i<10;i++)
{
arr[i]=new Array([i*2,i*3]);
}
// Then using the selector you can retrieve your desired value:
var selector=1;
alert(arr[selector]);//2,3
alert (arr[3]); //6,9
alert(arr[2]); //4,6
alert(arr[2][0][0]); //4
alert(arr[2][0][1]); //6