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

178
Views
Compare las dos matrices y reemplace/combine los valores de id presentes en la otra matriz (js)

Tengo dos matrices, y quiero poder comparar las dos y reemplazar los valores del objeto para la identificación presente en la matriz de información con la matriz de detalles y completar el resto tal como está. No he encontrado nada como esto. ¿Cuál sería la mejor manera de devolver similitudes?

 const details = [{ id: "id1", description: "new description-1" }, { id: "id3", linkUrl: "new link-1" } ] const info = [{ id: "id1", description: "old description-1", linkUrl: "#id1link-1", image: "#imageUrl-1" }, { id: "id2", description: "description-2", linkUrl: "#id1link-2", image: "#imageUrl-2" }, { id: "id3", description: "description-3", linkUrl: "#old link-2", image: "#imageUrl-2" } ] const result = [{ id: "id1", description: "new description-1", linkUrl: "#id1link-1", image: "#imageUrl-1" }, { id: "id2", description: "description-2", linkUrl: "#id1link-2", image: "#imageUrl-2" }, { id: "id3", description: "description-3", linkUrl: "#new link-2", image: "#imageUrl-2" } ]
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Asignación de uso de mapas, búsqueda y desestructuración.

 const result = info.map(item => { const new_info = details.find(detail => detail.id === item.id); return { ...item, ...new_info, }; })
about 4 years ago · Juan Pablo Isaza Report

0

Para grandes cantidades de datos, es mejor crear primero un mapa para los datos de detalles, de modo que la recuperación de una identificación pueda ocurrir en un tiempo constante:

 const details = [{id:"id1",description: "new description-1"},{id: "id3",linkUrl: "new link-1"}]; const info = [{id: "id1",description: "old description-1",linkUrl: "#id1link-1",image: "#imageUrl-1"},{id: "id2",description: "description-2",linkUrl: "#id1link-2",image: "#imageUrl-2"},{id: "id3",description: "description-3",linkUrl: "#old link-2",image: "#imageUrl-2"}]; const map = new Map(details.map(({id, ...rest}) => [id, rest])); const result = info.map(o => ({...o, ...map.get(o.id)})); console.log(result);

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!