Temporal Dead Zone

JavaScript 🟡 Mid

Definition

Zone entre le debut du scope et la declaration let/const ou la variable existe mais est inaccessible. Toute tentative d'acces lance un ReferenceError.

Analogie

Un colis en transit : il a ete expedie (hoiste) mais tu ne peux pas l'ouvrir tant qu'il n'est pas livre (declaration).

Exemple de code

{
  // TDZ pour x commence ici
  console.log(x); // ReferenceError!
  // TDZ pour x finit ici
  let x = 42;
  console.log(x); // 42
}

Cas d'usage

Comprendre pourquoi let/const est plus sur que var et debugger les ReferenceError.

#core#interview#fondamental