변수호이스팅

    호이스팅은 var 에서만 일어난다구요?

    참조 에러가 아닌 undefined? 개념을 공부할때 가장 쉽게 이해할수 있는 방법 중 한 가지는 코드를 통해 확인해보는것입니다. 먼저 아래의 코드를 통해 살펴보도록 하겠습니다. console.log(name); // undefined var name; 선언되지 않은 변수를 참조할 수 있을까요? 선언되지 않은 변수를 참조하려 한다면 이를 알려주는 가장 대표적인 에러로 참조 에러인 ReferenceError가 발생해야 합니다. 하지만 자바스크립트에서는 참조 에러 대신 undefined가 출력되는 것을 확인할 수 있습니다. 그 이유는 바로... 이런 현상이 발생하는 이유는 자바스크립트에서의 변수 선언문은 런타임이 아닌 런타임 이전 단계에서 먼저 실행되기 때문입니다. 자바스크립트의 엔진은 소스코드를 실행하기 ..