let·const·블록 스코프 선택
let과 const는 변수가 살아 있는 범위를 블록으로 좁혀 값 추적을 쉽게 만든다.
| 선택 | 쓸 때 | 장점 | 주의점 |
|---|---|---|---|
| const | 재할당이 필요 없는 이름 | 의도가 안정적 | 객체 내부 변경까지 막지는 않음 |
| let | 반복 카운터나 단계적으로 바뀌는 값 | 변경 지점이 드러남 | 넓은 범위에서 재사용 금지 |
| var | 기존 코드 이해용 | 함수 스코프와 호이스팅 확인 | 새 코드에서는 피함 |
| Block | if, for, 중괄호 범위 | 변수 수명 축소 | 블록 밖 접근 기대 금지 |
| TDZ | 선언 전 접근 금지 구간 | 초기화 순서 버그 발견 | 호이스팅과 접근 가능성을 혼동 |
변수 선언의 기본은 const이고, 바뀌는 이유가 분명할 때만 let으로 좁게 둔다.