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

341
Visualizações
Why are arrays passed by reference, but not singular variables? What is the benefit of this?

Code 1 prints "florence"

let name = "florence";

function test (arr) {
  arr += " and the machine";
}

test(name);

console.log(name);

Code 2 prints "florence and the machine"

let name = ["florence"];

function test (arr) {
  arr[0] += " and the machine";
}

test(name);

console.log(name);

I understand that the outcomes are different because Code 1 passes by value, and Code 2 passes by reference. I'm just trying to understand why.

  1. What is the benefit of retaining the mutability of an array, but not a variable?
  2. CAN YOU pass variables by reference?
  3. CAN YOU pass arrays by value (without a workaround)?
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

When you pass an object (array), the referrnce to the object is passed, so in your case arr points to name.

arr[0] however now points to the value at name[0], and name[0] is modified accordingly.

Changing arr has no global effect:

let name = ["florence"];

function test (arr) {
  arr[0] += " and the machine";
  arr=[];
}

test(name);

document.write(name);

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