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ć.