J'ai entendu dire que l'accès let
valeurs let
et const
avant leur déclaration peut provoquer un ReferenceError
raison de quelque chose appelé zone temporelle mortelle .
Quelle est la zone temporelle morte, comment se rapporte-t-elle à la portée et au levage, et dans quelles situations est-il rencontré?
let
et const
ont deux différences générales par rapport à var
:
var
avant qu'il soit déclaré n'a le résultat undefined
; Accéder à un let
ou const
avant qu'il ne soit déclaré lancer ReferenceError
: console.log(aVar); // undefined console.log(aLet); // causes ReferenceError: aLet is not defined var aVar = 1; let aLet = 2;