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

169
Visualizações
Objeto que pierde su contenido después de la modificación en Javascript

Tengo un objeto obj1 declarado en un archivo, digamos A.js. Exporto el objeto obj1 y copio un objeto local, digamos obj2 a otro archivo, digamos B.js Ahora, si exporto obj1 en un tercer archivo, digamos C.js , debería tener los valores de obj2 almacenados en él. Pero parece que obj1 mantiene los valores que tenía en A.js

 **A.js** export const obj1 = {}; **B.js** import obj1 from "A"; //called from main loop someFunction() { Object.assign(obj1,obj2); //At this point, the obj1 is holding the value of obj2 } **C.js** import obj1 from "A"; //obj1 is not holding the value of obj2 any more.
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

En primer lugar, no existe una garantía estricta de orden de importación en Node.JS. A veces, B.js carga antes que C.js y, a veces, lo contrario. Pero incluso si sabe con certeza el orden de importación, no es algo en lo que deba confiar, ya que podría cambiar en el futuro.

En segundo lugar, lo más probable es que las importaciones se almacenen en caché, por lo que cuando llega a la segunda import , en realidad importa lo que se importó la primera vez, que era el valor sin cambios .


Por lo general, los objetos exportados están diseñados para ser inmutables. Podría implementar este enfoque de la siguiente manera:

 // defaults.js export const defaults = { foo: 'foo1', bar: 'bar1' };
 // merge.js import { defaults } from './defaults'; export const merge = (overrides) => ({ ...defaults, ...overrides }); // The `defaults` is not mutated
 import { merge } from './merge'; const result = merge({ foo: 'foo2', baz: 'baz2' }); // { foo: 'foo2', bar: 'bar1', baz: 'baz2' }
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