let과 const 스코프

var의 함수 스코프와 호이스팅 혼선을 블록 스코프, TDZ, 바인딩 불변성으로 나누어 정리한다.

개념let/constvar와 차이확인 질문
Scope블록 단위로 살아 있음함수 단위로 살아 있음변수가 필요한 가장 작은 범위인가
Hoisting선언은 올려지지만 TDZ 접근 금지undefined로 접근 가능선언 전 읽기가 있는가
Reassignlet은 가능, const는 불가var는 가능정말 값이 바뀌어야 하는가
Object const바인딩만 고정객체 속성 변경 가능불변 데이터와 혼동하지 않는가
Loop반복마다 블록 스코프 생성var는 같은 binding 공유비동기 콜백에서 값이 꼬이지 않는가

const는 값을 얼리는 키워드가 아니라 이름이 다른 값을 다시 가리키지 못하게 하는 계약이다.