사실 함수 선언문과 함수 표현식은 실행하는 방식과 동장하는 방식도 동일해서 차이를 잘 느끼지 못합니다. 그럼 그 차이가 뭔지 살펴 보시죠 함수 선언문 어디서든 호출할 수 있습니다. 기본적으로 자바스크립트는 위에서 아래로 차례대로 한줄 씩 읽으면서 실행합니다. 이렇게 순차적으로 실행되고 즉시 반환하는 프로그래밍 언어를 인터프린터 언어라고 합니다. 그런데 이 코드는 실행이 됩니다. 왜 일까요? 이것은 자바 스크립트 내부 알고리즘 때문인데요 자바스크립트는 실행전 초기화 단계에서 코드의 모든 함수 선언문을 찾아서 생성해 둡니다. 그래서 우리가 보는 범위(ex. function 함수 안)와 다르게 사용가능한 범위가 굉장히 커지는데요 이것을 호이스팅(hoisting)이라고 합니다. 함수 표현식 코드에 도달하면 생성..