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
Tengo dos objetos y necesito fusionarlos y concatenar cadenas si dos accesorios tienen la misma clave

Tengo dos objetos y necesito fusionarlos y concatenar cadenas si dos accesorios tienen la misma nota clave: estoy usando lodash.js

 obj1 = { name: 'john', address: 'cairo' } obj2 = { num : '1', address: 'egypt' }

Necesito que el objeto fusionado sea como:

 merged = {name:"john", num: "1", address:"cairo,Egypt"}

el problema con la dirección prop cuando intento usar _.defaults(obj1,obj2) o _.merge(obj1,obj2)

el valor de la dirección será el valor de la propiedad de dirección dentro de obj2, por lo que necesito una forma de fusionar los dos objetos y concatenar las dos propiedades de dirección en cada objeto.

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Prueba esto:

 function merge(obj1, obj2) { let merged = { ...obj1, ...obj2 }; Object.keys(obj1).filter(k => obj2.hasOwnProperty(k)).forEach((k) => { merged[k] = obj1[k] + "," + obj2[k] }) return merged } obj1 = { name: 'john', address: 'cairo' } obj2 = { num: '1', address: 'egypt' } console.log(merge(obj1, obj2))

about 4 years ago · Juan Pablo Isaza Report

0

function mergeObjects(objArr) { const newObj = {}; objArr.forEach((element) => { const keys = Object.keys(element); keys.forEach((key) => { if (newObj[key]) newObj[key] = newObj[key] + "," + element[key]; else newObj[key] = element[key]; }); }); return newObj; } const obj1 = {name: 'john', address: 'cairo'} const obj2 = { num : '1', address: 'egypt'} console.log(mergeObjects([obj1, obj2]));

¡De esta manera puedes fusionar cualquier cantidad de objetos!

about 4 years ago · Juan Pablo Isaza Report

0

Ni siquiera necesitas lodash . Puede crear fácilmente su propia función para eso. Puedes hacerlo así:

  • new Set : para encontrar todas las claves únicas en ambos objetos de entrada
  • for...of - para iterar sobre claves únicas calculadas anteriormente

 function mergeObjects(obj1, obj2) { let merged = {}; for (const property of [...new Set([...Object.keys(obj1),...Object.keys(obj2)])]) { if(obj1[property]) merged[property] = obj1[property]; if(obj2[property]) merged[property] = merged[property] ? `${merged[property]},${obj2[property]}` : obj2[property]; } return merged; } const obj1 = { name: 'john', address: 'cairo' }; const obj2 = { num : '1', address: 'egypt' }; const mergedObj = mergeObjects(obj1, obj2); console.log(mergedObj);

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!