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

126
Vistas
Intentando devolver un valor de filtro () de una matriz de objetos basados en condicionales

Estoy tratando de devolver solo una parte de mi objeto como una matriz basada en condicionales, pero estoy un poco perplejo.

Tengo una matriz de objetos y quiero devolver una matriz de nombres para cada clave: valor en el que encajan.

Obtengo solo los emparejamientos únicos, pero también devuelvo la clave de comida: el valor y todo sigue dentro de un objeto, no de una matriz nueva. Alguna idea sería muy apreciada. Más nuevo en codificación.

 const organizeNames = function (foods) { let foodNames = foods.filter((names) => { if (names.food === 'oranges') { return names.name; } }); console.log(foodNames); }; console.log( organizeNames([ { name: 'Samuel', food: 'oranges' }, { name: 'Victoria', food: 'pizza' }, { name: 'Karim', food: 'pizza' }, { name: 'Donald', food: 'pizza' }, ]) );

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

0

Estás muy cerca aquí. Lo que necesita incorporar es .map() para mapear su lista de objetos a una lista de nombres. Su parte de filtro funciona, en parte por accidente, así que lo arreglé para que sea más correcto ( return names.food === 'oranges' ), y luego, una vez que tenga su lista de objetos que coincidan con 'naranjas' para su comida, asignas esa lista filtrada a una lista de nombres haciendo .map(names => names.name)

 const organizeNames = function (foods) { let foodNames = foods.filter((names) => { // only keep items whose .food property === 'oranges' return names.food === 'oranges'; // returns true or false }).map(names => { // map the filtered list of objects into a list of names by // returning just the object's .name property return names.name; }); return foodNames; }; console.log( organizeNames([ { name: 'Samuel', food: 'oranges' }, { name: 'Victoria', food: 'pizza' }, { name: 'Karim', food: 'pizza' }, { name: 'Donald', food: 'pizza' }, ]) );

about 4 years ago · Juan Pablo Isaza Denunciar

0

La función de devolución de llamada filter() debería devolver true o false . Luego puede usar map() para obtener una propiedad específica de cada uno de los elementos filtrados.

 const organizeNames = function(foods) { let foodNames = foods.filter((names) => names.food == 'oranges').map(names => names.name); return foodNames; } console.log( organizeNames([{ name: 'Samuel', food: 'oranges' }, { name: 'Victoria', food: 'pizza' }, { name: 'Karim', food: 'pizza' }, { name: 'Donald', food: 'pizza' }, ]) );

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