Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

175
Vistas
¿Cómo "migrar" un objeto a otro objeto en JavaScript?

Dados dos objetos, llamados: ObjectA y ObjectB :

 var ObjectA = { config1: "5", config2: "6", config3: "7" } var ObjectB = { config1: "1", config2: "2", config4: "3", config5: "4" }

¿Cómo puedo copiar de ObjectB a ObjectA para que ObjectA tenga las mismas propiedades de ObjectB mientras que los valores de las propiedades en ObjectA se mantienen y los valores de ObjectB that doesn't exist en ObjectA se copian en ObjectA ?

Resultado Esperado:

 ObjectA = { config1: "5", config2: "6", config4: "3", config5: "4" }
  • config3 se elimina ya que no existe en ObjectB ,
  • config4 con config5 se copian en ObjectA ya que no existen en ObjectA ,
  • y el valor en config1 con config2 se mantienen iguales en ObjectA ya que esos dos existen en ambos objetos)
about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Usar reduce :

 ObjectA = Object.keys(ObjectB).reduce( (acc, key) => ({ ...acc, [key]: ObjectA[key] ?? ObjectB[key]}), {} )

Esto usará las claves de ObjectB , tomará valores de ObjectA , cuando existan (con respaldo para ObjectB ) y completará un objeto vacío con los resultados.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Puedes usar la función reductora para resolver.

 var ObjectA = { config1: "5", config2: "6", config3: "7" } var ObjectB = { config1: "1", config2: "2", config4: "3", config5: "4" } const res = Object.keys(ObjectB).reduce((prev, next) => { if(ObjectA[next]){ prev[next] = ObjectA[next]; } return prev; }, {...ObjectB}) console.log(res)

about 4 years ago · Juan Pablo Isaza Denunciar

0

Aquí hay una posible solución que es más de la vieja escuela: lo que esto hace básicamente:

  • Recorra las propiedades en ObjectA. Si no existe en ObjectB, elimine
  • Recorra las propiedades en ObjectB. Si no existe en ObjectA, cópielo.
 function mergeObject(oldObj: Object, newObj: Object) { var copyOfOldObj = Object.assign({}, oldObj); for (const key in copyOfOldObj) { if (!newObj.hasOwnProperty(key)) { delete copyOfOldObj[key]; } } for (const key in newObj) { if (!copyOfOldObj.hasOwnProperty(key)) { copyOfOldObj[key] = newObj[key]; } } return copyOfOldObj; }
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda