Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

169
Vistas
Get value from nested array

i have an array that represents position inside nested array

const level = [2,1,0];

and nested array

const array = [

    [1,2,3,4],
    [22,33,444],
    [[7],[8],[9]]
    ];

i want to get element which position is represented in a level array, manually i would get it this way:

array[2][1][0]

but i need to write a function that itterates over level array which can be any length and returns element from this position, i've tried to use es6 reduce for this purpose but didn't succed can some1 help me with this issue, what am i doing wrong?

level.reduce((prev,curr) => {
  return prev[curr];
}, level[0]);

desired result: for level = [0,0] get value 1 for level = [2,1,0] get value 8

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

You can do that by using destructuring assignment and recursion:

const level = [2, 1, 0];

const array = [
  [1, 2, 3, 4],
  [22, 33, 444],
  [[7], [8], [9]],
];

const find = ([index, ...rest], { [index]: value }) =>
  rest.length ? find(rest, value) : value;

const result = find(level, array);

console.log(result);

Note that also works with composite trees with objects and arrays:

const level = ['prop', 1, 'otherProp', 1];

const tree = {
  prop: [
    {},
    { otherProp: [2, 4, 6] }
  ]
};

const find = ([index, ...rest], { [index]: value }) =>
  rest.length ? find(rest, value) : value;

const result = find(level, tree);

console.log(result);

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda