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

114
Visualizações
JS Object agrega y solo agrega un nuevo valor al primer objeto

Tengo 2 objetos y quiero agregar un nuevo par de valores clave solo al primer objeto de coincidencia de este tipo.

 Obj1 [{ buyDate: "yesterday", productId: "0001", consumerId: "John", price: 10 // add new key value pair here }, { buyDate: "today", productId: "0001", consumerId: "John", price: 10 }, { buyDate: "yesterday", productId: "0002", consumerId: "Doe", price: 7 }]
 Obj2 { productId: "0001", consumerId: "John", quantity: 4 }

En Obj1 , dado que el productId de producto y el ID de consumerId son iguales, quiero agregar un nuevo par de valores clave de Obj2 que tenga el mismo productId de producto y ID de consumerId para el primer 0001 y John .

Me quedé atrapado desde aquí.

 let newObj2 = {}; if (Obj1) { Obj1.forEach((e) => { newObj2[e.consumerId] = e; }); } let newData = Obj1.map((e) => { return { ...e, quantity: Obj2[e.consumerId]?.quantity ? Obj2[e.consumerId]?.quantity : 0, }; });

¿Alguien podría ayudarme a lograrlo? Agradezco cualquier tipo de respuesta. Gracias antes

editar: dado que es un dato ficticio, escribí algún error

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

0

Use Array.find para encontrar el elemento en la matriz que se busca de la siguiente manera:

 const obj1 = [ { buyDate: "yesterday", productId: "0001", consumerId: "John", price: 10 }, { buyDate: "today", productId: "0001", consumerId: "John", price: 10 }, { buyDate: "yesterday", productId: "0002", consumerId: "Doe", price: 7 } ]; const obj2 = { productId: "0001", consumerId: "John", quantity: 4 }; let item = obj1.find(function(item) { return item.productId === obj2.productId && item.consumerId === obj2.consumerId }); if (item === undefined) { // not found } else { item.quantity = obj2.quantity; } console.log(obj1);

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