Sobes.tech
Junior

Jaka jest różnica między let a const?

sobes.tech AI

Odpowiedź od AI

let:

  • Deklaruje zmienną z zakresem blokowym.
  • Zmienna może być przypisana ponownie.
  • Nie może być ponownie zadeklarowana w tym samym zakresie.

const:

  • Deklaruje stałą z zakresem blokowym.
  • Wartość nie może być przypisana ponownie (dla typów prymitywnych). Dla obiektów i tablic można zmieniać ich zawartość, ale nie sam wskaźnik.
  • Musi być zainicjalizowana podczas deklaracji.
  • Nie może być ponownie zadeklarowana w tym samym zakresie.
// let
let count = 0;
count = 1; // Dozwolone
// let count = 2; // Błąd: Cannot redeclare block-scoped variable 'count'.

// const
const maxItems = 10;
// maxItems = 11; // Błąd: Assignment to constant variable.

const user = { name: 'Alice' };
user.name = 'Bob'; // Dozwolone, zmienia zawartość obiektu

// const PI; // Błąd: Missing initializer in const declaration

Użycie const jest preferowane, gdy wartość zmiennej nie będzie zmieniana, ponieważ zwiększa czytelność kodu i zapobiega przypadkowym nadpisaniom. let używa się, gdy wartość zmiennej będzie się zmieniać.