Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

111
Visualizações
Encuentre elementos por ID de otra matriz y agrégueles una nueva propiedad

Quiero encontrar todos los objetos en la matriz de elementos que está en la matriz de elementos agrupados por 'id' y agregar a cada elemento isGrouped: propiedad verdadera.

 const items = [ { id: 1, name: "item1" }, { id: 2, name: "item2" }, { id: 3, name: "item3" } ]; const groupedItems = [ { id: 2, name: "item2" }, { id: 3, name: "item3" } ];

por lo que el resultado debe ser:

 items = [ { id: 1, name: "item1" }, { id: 2, name: "item2", isGrouped:true }, { id: 3, name: "item3", isGrouped: true } ];

algunas ideas ?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Puede iterar sobre la matriz de items usando map , creando una propiedad isGrouped que es el resultado de llamar a findIndex en la propiedad item.id en los valores de id de groupedItems :

 const items = [ { id: 1, name: "item1" }, { id: 2, name: "item2" }, { id: 3, name: "item3" } ]; const groupedItems = [ { id: 2, name: "item2" }, { id: 3, name: "item3" } ]; const result = items.map(item => ({ ...item, isGrouped : groupedItems.findIndex(g => g.id == item.id) >= 0 } )); console.log(result);

Tenga en cuenta que he agregado isGrouped como false para aquellos objetos que no están agrupados, en lugar de omitir la propiedad. Parece que debería ser más fácil simplemente probar un valor booleano de una propiedad en lugar de verificar si la propiedad existe. Si realmente desea omitir la propiedad, podría hacer algo como esto:

 const items = [ { id: 1, name: "item1" }, { id: 2, name: "item2" }, { id: 3, name: "item3" } ]; const groupedItems = [ { id: 2, name: "item2" }, { id: 3, name: "item3" } ]; const result = items.map(item => groupedItems.find(g => g.id == item.id) ? { ...item, isGrouped : true } : item ); console.log(result);

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda