[javascript] IIFE

less than 1 minute read

IIFE

IIFE(Immediately Invoked Function Expression, 즉시 호출하는 함수 표현식) 는 함수를 선언하고 즉시 실행한다. IIFE는 다음과 같은 형태를 취힌다.

(function () {
  // IIFE 바디
})();

IIFE는 익명함수를 ()로 감싸는데 그 이유는 function() {}과 같이 작성되면 자바스크립트 코드를 해석하는 parser는 이것을 함수 선언문으로 인지하기 때문이다. 따라서 ()와 같이 괄호로 묶어주어 함수 선언문이 아닌 함수 표현식이라는 것을 명시적으로 나타내야 한다.

IIFE의 장점은 내부에 있는것들이 모두 자신만의 스코프를 가지지만, IIFE 자체는 함수이므로 그 스코프 밖으로 무언가를 내보낼 수 있다는 것이다.

Updated: