$cat~/glossario/temporal-dead-zone.md

Temporal Dead Zone (TDZ)

JavaScript

Período entre entrar no escopo e a declaração let/const onde o binding não pode ser acessado.

temporal-dead-zone.mdmarkdown
01

seção

Explicação

Temporal Dead Zone (TDZ) — Período entre entrar no escopo e a declaração let/const onde o binding não pode ser acessado.

Período entre entrada no escopo e execução da linha let/const onde acessar o binding lança ReferenceError.

Protege contra usar variável antes de inicialização — diferente de var que retorna undefined.

02

seção

Exemplo

snippetJavaScript
function demo() {  // console.log(t); // TDZ  let t = 10;}
03

seção

Modo de uso

  • Diagnosticar ReferenceError em blocos

  • Evitar redeclaração confusa

  • Entender ordem de class fields

04

seção

Armadilhas comuns

  • typeof undeclared global vs TDZ local

  • Parâmetros default referenciando let posterior

05

seção

Termos relacionados