{ hoisting }
: 인터프리터가 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것을 의미함.
'var'로 선언한 변수의 경우 hoisting시 undefined로 변수를 초기화 함.
<개발자의 멍청한 실수>
<1>
console.log(myName);
var myName = 'nas'
=> undefined
-----------------------------------------------------------
<2>
console.log(myName);
let myName = 'nas'
=> RerenceError 발생.
=> 자바스크립트에서 let 사용시 친절하게 알려줌.
따라서 개발자의 멍청한 실수를 알 수 있는 let 사용 권장.