Junior — Middle
Co oznacza termin TDZ i jak wpływa na wykonywanie kodu w JavaScript?
sobes.tech AI
Odpowiedź od AI
TDZ (Strefa Martwego Czasu) to okres czasu między deklaracją zmiennej za pomocą let lub const a jej faktycznym przypisaniem wartości, w trakcie którego dostęp do zmiennej powoduje błąd.
W przeciwieństwie do var, zmienne let i const nie są podnoszone (hoisting) z inicjalizacją, a pozostają w TDZ do momentu deklaracji. Jeśli spróbujesz odwołać się do zmiennej w TDZ, zostanie wyrzucony błąd ReferenceError.
Przykład:
console.log(a); // ReferenceError: Cannot access 'a' before initialization
let a = 10;
TDZ pomaga unikać błędów związanych z używaniem zmiennych przed ich deklaracją, czyniąc kod bardziej przewidywalnym i bezpiecznym.