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

137
Vistas
Intentando encontrar filtrar una matriz para no mostrar duplicados

Tratando de encontrar la falla en mi lógica. Tengo una porción de estado llamada empresas que se inicializa en una matriz vacía:

 const [companies, setCompanies] = useState([]);

Me llegan mis datos, que son una serie de objetos con datos de la empresa. Quiero enviar los nombres de las empresas al estado de las empresas, pero verifique si el nombre ya existe allí. Esta es la solución que se me ocurrió, pero por alguna razón sigo haciendo que cada elemento aparezca en la matriz de estado, incluso si ya existe.

 // Data is an array of objects containing company data including the company name (companyName) // State const [companies, setCompanies] = useState([]); useEffect(() => { const companyNames = data.map(app => app.companyName); const filteredName = companyNames.filter(name => companies.includes(name) === false); setCompanies(filteredName); }, [data]) // Expected Output ==> [array with no repeating names] // Current OutPut ==> [all names even if they appear more than once]
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

El objeto de set de javascript está hecho a medida para esto.

consulte https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set

 // Use to remove duplicate elements from the array const numbers = [2,3,4,4,2,3,3,4,4,5,5,6,6,7,5,32,3,4,5] console.log([...new Set(numbers)]) // [2, 3, 4, 5, 6, 7, 32]

about 4 years ago · Juan Pablo Isaza Denunciar

0

Puede filtrar la matriz antes de procesarla para obtener solo valores únicos, así:

 [1,2,3,2,4,3,1].filter((el, index, arr) => arr.indexOf(el) === index) // yields [1,2,3,4]

o use un conjunto de Javascript.

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