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

203
Visualizações
¿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 Respostas
Responde à pergunta

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 Relatório

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 Relatório

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 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