함수와 익명 함수

function을 이용한 함수 정의 방식은 함수선언문(function declaration)과 함수표현식(function expression)으로 나뉜다.

함수선언식으로 정의된 함수는 자바스크립트 인터프리터가 스크립트가 로딩되는 시점에 바로 초기화하고 이를 VO(Variable Object)에 저장한다. 그렇기 때문에 함수 선언의 위치와는 상관없이 어느 곡에서든지 호출이 가능하다.

함수 표현식은 함수선언식돠 다르게 스크립트 로딩 시점에 VO에 함수를 저장하지 않고 runtime시에 해석되고 실행된다.

함수 선언식으로 함수를 정의하면 사용하기는 쉽지만 대규모 애플리케이션을 개발하는 경우 인터프리터가 너무 많은 코들 VO에 저장하므로 애플리케이션의 응답속도는 현저히 떨어질수 있으므로 주의해야 한다.

출처 : http://www.nextree.co.kr/p4150/