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

191
Vistas
guardar diferentes elementos en una matriz por una condición

¿Cómo puedo guardar elementos en una matriz según una condición? En el siguiente array si paso una edad me devuelve el array con los elementos que cumplen esa condición, pero si paso una edad que no existe o no pasa nada al llamar a la función como puedo sumar todos los elementos del array1 a matriz2

 const array1 = [ { name: 'jose', country: 'argentina', age: 20 }, { name: 'pedro', country: 'brazil', age: 18 }, { name: 'andrea', country: 'mexico', age: 20 }, { name: 'luis', country: 'eu', age: 19 }, { name: 'nancy', country: 'mexico', age: 18 } ]; const getDatos = (age) => { const array2 = array2.filter(data=> data.age === age); console.log(array2 ) } getDatos(20);
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

¿Puedes usar el operador ternario ? para verificar la longitud de la matriz devuelta por el filter . Si se encuentran coincidencias, devuélvalas; de lo contrario, devuelva todos los registros.

 const all = [ { name: 'jose', country: 'argentina', age: 20 }, { name: 'pedro', country: 'brazil', age: 18 }, { name: 'andrea', country: 'mexico', age: 20 }, { name: 'luis', country: 'eu', age: 19 }, { name: 'nancy', country: 'mexico', age: 18 } ]; const getDatos = (age) => { let matches = all.filter(data => data.age === age); return (matches.length) ? matches : all; } console.log(getDatos(20)); // jose & andrea console.log(getDatos(99)); // all records
about 4 years ago · Juan Pablo Isaza Denunciar

0

No estoy seguro de si esto es lo que desea, pero puede verificar si la edad está en la matriz usando Array.prototype.some ( documentación de MDN )

 const getDatos = (age) => { if (array1.some(data => data.age === age)) { return array1.filter(data=> data.age === age); } else { return array1; } }

EDITAR: Basado en el comentario de Sebastian Simons, este enfoque es mejor

 const getDatos = (age) => { const results = array1.filter(data => data.age === age); return results.length > 0 ? results : array1; }
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