Sobes.tech
Junior

Qual é a diferença entre let e const?

sobes.tech IA

Resposta da IA

let:

  • Declara uma variável com escopo de bloco.
  • A variável pode ser reatribuída.
  • Não pode ser redeclarada no mesmo escopo.

const:

  • Declara uma constante com escopo de bloco.
  • O valor não pode ser reatribuído (para primitivos). Para objetos e arrays, o conteúdo pode ser alterado, mas não o ponteiro.
  • Deve ser inicializada na declaração.
  • Não pode ser redeclarada no mesmo escopo.
// let
let count = 0;
count = 1; // Permitido
// let count = 2; // Erro: Cannot redeclare block-scoped variable 'count'.

// const
const maxItems = 10;
// maxItems = 11; // Erro: Assignment to constant variable.

const user = { name: 'Alice' };
user.name = 'Bob'; // Permitido, altera o conteúdo do objeto

// const PI; // Erro: Missing initializer in const declaration

O uso de const é preferível quando o valor da variável não será alterado, pois melhora a legibilidade do código e previne reatribuições acidentais. let é usado quando o valor da variável irá mudar.