실험 1 — strict 모드: 블록 안 함수는 블록 최상단으로 호이스팅
선언문보다 먼저 호출해도 동작합니다. TDZ가 없어요.
코드
실험 2 — let / const는 다르다 (TDZ 존재)
함수 선언문과 달리 let/const는 선언 위치 전에 접근하면 ReferenceError가 나요.
코드
실험 3 — 조건부 함수 정의: 함수 선언문 vs const + 표현식
strict 모드 기준. 함수 선언문은 블록 스코프에 갇히고, const + 표현식은 의도대로 동작해요.
코드