ReferenceError: Cannot access 'myVar' before initialization (Temporal Dead Zone) – JavaScript REFERENCEERROR_TDZ

REFERENCEERROR_TDZ

Le variabili dichiarate con 'let' e 'const' subiscono l'hoisting ma non vengono inizializzate con undefined (come 'var'); accedere ad esse prima della riga di dichiarazione si trova nella Temporal Dead Zone e scatena ReferenceError.

Cosa significa questo errore?

Le variabili dichiarate con 'let' e 'const' subiscono l'hoisting ma non vengono inizializzate con undefined (come 'var'); accedere ad esse prima della riga di dichiarazione si trova nella Temporal Dead Zone e scatena ReferenceError.

Messaggio originale

ReferenceError: Cannot access 'myVar' before initialization (Temporal Dead Zone)

Contesto e parole chiave

Alias

  • Cannot access variable before initialization JavaScript
  • Temporal Dead Zone TDZ

Messaggi alternativi

  • accesso a variabile prima dell'inizializzazione TDZ

Prodotti

  • JavaScript Engine (V8, SpiderMonkey, JavaScriptCore) / Web API

Piattaforme

  • Bun
  • Deno
  • Node.js
  • Qualsiasi Browser Web

Parole chiave

  • ecmascript
  • errore-javascript-cannot-access-variable-before-initialization
  • javascript
  • javascript.scope.cannot-access-variable-before-initialization-temporal-dead-zone
  • js
  • Scope, Closures e This

Cause possibili

Causa tecnica per Errore JavaScript: Cannot access variable before initialization (Temporal Dead Zone - TDZ)

Le variabili dichiarate con 'let' e 'const' subiscono l'hoisting ma non vengono inizializzate con undefined (come 'var'); accedere ad esse prima della riga di dichiarazione si trova nella Temporal Dead Zone e scatena ReferenceError.

molto comune

Diagnosi

Diagnostica in console browser per Errore JavaScript: Cannot access variable before initialization (Temporal Dead Zone - TDZ)

Aprire la Console degli Strumenti per Sviluppatori (F12) o verificare l'output di esecuzione Node.js per analizzare lo stack trace.

Come leggere il risultato. Indica il file sorgente esatto e la riga di codice in cui si è verificata l'eccezione o il type error.

terminal
node --trace-warnings app.js

Risoluzione

Risoluzione standard per Errore JavaScript: Cannot access variable before initialization (Temporal Dead Zone - TDZ)

Difficoltà: facileRischio: basso

Applicare la correzione al codice sorgente JavaScript conforme agli standard ECMAScript moderni.

  1. Ispezionare la riga evidenziata nella console degli errori
  2. Applicare optional chaining (?.) o gestione condizionale dei valori null/undefined
  3. Ricaricare la pagina o riavviare il processo per verificare la scomparsa dell'errore

Domande frequenti

Come risolvere l'errore Errore JavaScript: Cannot access variable before initialization (Temporal Dead Zone - TDZ) in JavaScript?

Le variabili dichiarate con 'let' e 'const' subiscono l'hoisting ma non vengono inizializzate con undefined (come 'var'); accedere ad esse prima della riga di dichiarazione si trova nella Temporal Dead Zone e scatena ReferenceError.

Approfondimenti

Schede correlate