Tengo una docena de matrices (hipotéticamente) y cada una tiene una longitud completamente diferente. ¿Hay alguna manera de que pueda nombrarlos de manera que una entrada numérica en una función devuelva una matriz correspondiente a ese número específico?
Esto no tiene sentido, así que esto es lo que quiero:
var dQw4w9WgXcQ; const array1 = [1,1,1,1,1,1,1,1,1,1]; const array2 = [1,2,3,4]; const array3 = [1,3,6]; function getArray(id){ output = constNamed('array' + id); } //getArray(2) sets dQw4w9WgXcQ to [1,2,3,4]y sí, dQw4w9WgXcQ es solo algo que escribí por accidente
USING OBJECT
1) Puede crear un objeto que contenga todas las matrices como:
const arrays = { array1, array2, array3, }; 2) Asigne el resultado getArray(2) a dQw4w9WgXcQ simplemente devolviendo la matriz del objeto.
return arrays[`array${id}`]; var dQw4w9WgXcQ; const array1 = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]; const array2 = [1, 2, 3, 4]; const array3 = [1, 3, 6]; function getArray(id) { const arrays = { array1, array2, array3, }; return arrays[`array${id}`]; } dQw4w9WgXcQ = getArray(2); console.log(dQw4w9WgXcQ); NOTA: si desea establecer el valor en dQw4w9WgXcQ directamente después de la invocación de la función getArray(2)
var dQw4w9WgXcQ; const array1 = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]; const array2 = [1, 2, 3, 4]; const array3 = [1, 3, 6]; function getArray(id) { const arrays = { array1, array2, array3, }; dQw4w9WgXcQ = arrays[`array${id}`]; } getArray(2); console.log(dQw4w9WgXcQ); USING ARRAY
var dQw4w9WgXcQ; const array1 = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1]; const array2 = [1, 2, 3, 4]; const array3 = [1, 3, 6]; function getArray(id) { const arrays = [array1, array2, array3]; return arrays[id - 1]; } dQw4w9WgXcQ = getArray(2); console.log(dQw4w9WgXcQ);Haga que una matriz contenga todas las matrices. Luego puede pasar esa matriz a la función como un argumento junto con la identificación y usar find para devolver la matriz en el índice de id - 1 (porque los índices están basados en cero). Si find no puede cumplir la condición, devolverá undefined .
const arr = [ [1,1,1,1,1,1,1,1,1,1], [1,2,3,4], [1,3,6] ]; function getArray(arr, id){ return arr.find((a, index) => index === id - 1); } console.log(getArray(arr, 2)); console.log(getArray(arr, 4));Tenga en cuenta que todo lo que estamos haciendo aquí es asignar