프로그래밍/JavaScript 기초
자바스크립트에서 var의 대체인 let의 도입과 그 이유
"자바스크립트에서 var와 let은 모두 변수를 선언하는 키워드 입니다. 그러나 let은 var보다 블록 스코프(block scope)를 지원하고, 호이스팅(hoisting)이 발생하지 않아 좀 더 예측 가능한 동작을 제공합니다. 이러한 이유로 let이 var의 대안으로 사용되게 되었습니다." 블록스코프 변수는 접근이 가능한 스코프를 가지고 있습니다. var는 함수 스코프를 가지고 있어서 블록 외부에서도 접근이 가능합니다. let은 블록 스코프가 적용되어 블록 내에서만 접근을 허용 합니다. var 의 경우 위의 코드에서 var로 선언된 변수 x는 블록 내에서 선언되었음에도 전역 스코프에 영향을 미치게 됩니다. 이는 예상치 못한 변수의 노출로 인한 오류를 유발할 수 있습니다. if (true) { var ..