Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

112
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!