ONE QUESTION AT A TIME.

천천히 생각하고, 분명하게.

TODAY’S QUESTION813 / 1500
언어·런타임난이도 중하꼬리 질문에서 확장 · 핵심 답변

블록 밖 변수가 있는데 블록 안 let 선언 전에 읽으면 오류가 납니다. shadowing과 TDZ는 어떻게 적용되나요?

꼬리 질문을 독립 문항으로 확장했습니다. 원래 문항에서 맥락 보기 →

잠깐, 답변을 보기 전에
먼저 내 말로 설명해 볼까요?

답변과 점검 포인트 펼치기답변 접기
01

구두 답변

정의를 외우기보다, 원리와 조건을 연결해 설명해 보세요.

안쪽 let 바인딩은 블록 전체에서 바깥 이름을 가리지만 선언의 초기화 전에는 TDZ에 있습니다. 따라서 그 구간에서 바깥 값으로 자동 fallback하지 않고 ReferenceError가 날 수 있습니다.

같은 이름을 피하거나 초기화 순서를 명확히 합니다. typeof도 TDZ 바인딩에는 안전한 부재 검사로 일반화할 수 없습니다. 중첩 블록·함수·module·default 인자 문맥을 구분해 시험합니다.

02

득점 포인트

이해가 드러나는 지점을 확인해 보세요.

  • 안쪽 let 바인딩은 블록 전체에서 바깥 이름을 가리지만 선언의 초기화 전에는 TDZ에 있습니다. 따라서 그 구간에서 바깥 값으로 자동 fallback하지 않고 ReferenceError가 날 수 있습니다.
  • 중첩 블록·함수·module·default 인자 문맥을 구분해 시험합니다.
03

감점 포인트

놓치기 쉬운 조건과 오해를 짚어 보세요.

  • 다음 핵심 구분을 반대로 설명하거나 성립 조건을 생략한다: 안쪽 let 바인딩은 블록 전체에서 바깥 이름을 가리지만 선언의 초기화 전에는 TDZ에 있습니다.
04

더 파고들 거리

하나 더 질문하며 이해의 범위를 넓혀 보세요.

득점·감점 포인트는 학습용 자기 점검 기준이며, 특정 회사의 실제 채점표가 아닙니다.

원리부터 공부하고 싶다면

답변을 보충하는 개념·예제·슈도코드를 읽어 보세요.

← 전체 질문 보기