ANÚNCIO

~/questoes/programacao

Qual é a principal diferença entre variáveis declaradas com 'let' e 'const' em JavaScript?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Aula de referência Fundamentos de Programação com JavaScript – Curso Completo
Para fixar

Let vs Const em JavaScript: Entenda a Diferença Fundamental

Conceito central

Em JavaScript, let e const são duas formas modernas de declarar variáveis com comportamentos diferentes. A principal diferença está na capacidade de reatribuir valores: let permite mudanças, const não. Escolher entre elas é essencial para escrever código seguro e previsível.

Por que essa resposta faz sentido

A alternativa B está correta porque captura a essência da diferença: let permite que você mude o valor da variável depois de criada, enquanto const bloqueia qualquer reatribuição após a inicialização. Essa é a característica que mais impacta como você usa cada uma no dia a dia.

Armadilhas comuns

  • Confundir 'const não pode ser reatribuído' com 'const é imutável'. Um objeto criado com const pode ter suas propriedades modificadas — const bloqueia apenas a reatribuição da própria variável.
  • Achar que const é sempre melhor e obrigatória. Na verdade, use const como padrão, mas use let quando você souber que o valor vai mudar. Ambas são válidas.
  • Pensar que let e const têm regras de escopo iguais a var. Todas as três têm comportamentos diferentes com escopo de bloco, hoisting e temporal dead zone.

Entenda as alternativas

A

Isso é um mito comum. Const não é mais rápida que let. A diferença está na mutabilidade, não na velocidade. Usar const nem sempre é obrigatório ou 'melhor' — deve ser uma escolha consciente baseada em se você vai mudar o valor ou não.

B

Esta é a resposta correta. Let permite reatribuição: você pode fazer `let x = 5; x = 10;` sem problemas. Const proíbe isso: `const y = 5; y = 10;` gera um erro. Essa diferença determina quando usar cada uma.

C

Ambas funcionam em escopos locais e globais de forma similar. A diferença não é sobre alcance global ou local, mas sobre permitir mudanças de valor. Confundir let/const com var é comum — var tinha regras de escopo diferentes.

D

Const não ocupa menos memória que let. Essa afirmação mistura conceitos incorretos. A otimização de memória em JavaScript é complexa e não depende de escolher const ou let. O importante é que const impede reatribuição, não que economiza memória.

Dica prática: Na prática, comece com const como sua escolha padrão. Se depois perceber que precisa mudar o valor, troque para let. Isso força você a pensar sobre a intenção de cada variável e deixa seu código mais claro para outros desenvolvedores lerem.

Revise pensando: Se você tentar fazer `const nome = 'João'; nome = 'Maria';`, o que acontece? E se fizesse a mesma coisa com let, funcionaria?