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

181
Visualizações
JS push object to array by value

How do I push an object to an array by value instead of by reference? Specifically, I want to mutate an object in a for loop and push its value at each iteration. If there is a better way to do this without mutating the object, that works too.

Here is the problem:

> let foo = {"a": 1};
undefined
> let arr = [];
undefined
> for (let i=0;i<10;i++) {
... arr.push(foo);
... foo.a += 1;
... }
11
> arr
[
  { a: 11 }, { a: 11 },
  { a: 11 }, { a: 11 },
  { a: 11 }, { a: 11 },
  { a: 11 }, { a: 11 },
  { a: 11 }, { a: 11 }
]

What I want is arr to have

[
  { a: 1 }, { a: 2 },
  { a: 3 }, { a: 4 },
  { a: 5 }, { a: 6 },
  { a: 7 }, { a: 8 },
  { a: 9 }, { a: 10 }
]

(ignore the off-by-1 error)

about 4 years ago · Juan Pablo Isaza
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