TDZ(Temporal Dead Zone) 자바스크립트에서 let이나 const로 변수를 선언했는데, 예상치 못한 ReferenceError가 발생한 경험, 있으신가요? “분명 선언했는데 왜 안 되지?”라는 의문을 불러일으키는 이 상황의 핵심엔 바로 TDZ(Temporal Dead Zone)라는 개념이 숨어 있습니다.이 글에서는 TDZ가 무엇인지, 어떻게 생기는지, 그리고 왜 var에는 없고 let/const에만 생기는지를 간단한 예제와 함께 정리해봅니다. 1. TDZ(Temporal Dead Zone)란?TDZ(Temporal Dead Zone)는 자바스크립트에서 변수가 선언되었지만 초기화되지 않은 시점부터, 초기화가 완료되기 전까지의 영역을 의미합니다. 즉, let이나 const로 선언된 변수는 ..