es6 이전의 변수 선언 방식으로 function단위의 scope를 갖음
ES6(ECMAScript6)의 변수 선언 방식.
둘 다 재선언은 x.
let은 변수에 재할당이 가능하지만, const는 변수 재선언/ 재할당 모두 xxxxxx
block을 지정해주면 각각의 scope를 갖게 되고 이것이 block-scope
변수가 함수내에서 정의되었을 경우 선언이 함수의 최상위로, 함수 바깥에서 정의되었을 경우는 전역 컨텍스트의 최상위로 바뀌는 것.
호이스팅을 변수/함수 선언이 물리적으로 작성한 코드의 상단으로 옮겨지는 것 같지만 코드에서 입력한 위치와 정확히 일치한 곳에 있음.