Javascript Function
함수 정의 방법
1. function declaration(함수 선언식)
: 함수 선언식으로 정의된 함수는 자바스크립트 인터프리터가 스크립트가 로딩되는 시점에 바로 초기화 하고
이를 VO(Variable object)에 저장. 그렇기 때문에 함수 선언의 위치와는 상관없이 사용가능.
// 함수선언식(function declaration)
function company() {
/* 실행코드 */
}
2. function expression(함수 표현식)
runtime시에 해석되어 실행, 함수를 변수에 할당하여 사용할 경우 당연히 '함수표현식' 이후에 사용가능.
// 기명 함수표현식(named function expression)
var company = function company() {
/* 실행코드 */
};
// 익명 함수표현식(anonymous function expression)
var company = function() {
/* 실행코드 */
};
// 기명 즉시실행함수(named immediately-invoked function expression)
(function company() {
/* 실행코드 */
}());
// 익명 즉시실행함수(immediately-invoked function expression) - 권장 표기법
(function() {
/* 실행코드 */
}());
// 익명 즉시실행함수(immediately-invoked function expression)
(function() {
/* 실행코드 */
})();
* 함수선언식으로 함수를 정의하면 사용하기는 쉽지만 대규모 Application을 개발하는 경우 인터프리터가
너무 많은 함수를 VO에 저장하므로 응답속도가 현저희 떨어질수 있음.
스크립트 파일을 모듈화 하고 이를 필요한 시점에 비동기 방식으로 로딩하여 http요청을 줄이고
응답속도를 향상할수 있음
|