javascript 는 어휘적 환경(Lexical Environment) 가진다. javascript 는 실행되기 전 코드를 전체적으로 읽는다. // *1 let one; //*2 one = 1; //*3 function addone(num){ console.log(one + num); } addOne(5); //*4 위의 코드의 *1 의 위치에서의 Lexical 환경은 one, 함수 addOne 이 있다. one은 호이 스팅은 되었지만 초기화가 되지 않아 사용할 수 없다. let one이나 const one으로 호출이 되어야 사용가능하다. 함수인 addOne 은 *1에서 사용이 가능하다. 일반 함수 식은 호이 스팅이 되어 어느 위치에 있든 스코프 최상단에서 호출한 것과 동일한 효력을 가진다. *2 위치..