자바스크립트에서 괄호로 묶인 함수를 "즉시 호출된 함수 표현식" 또는 "자체 실행 함수"라고 합니다.
래핑의 목적은 네임스페이스를 지정하고 멤버 함수의 가시성을 제어하는 것입니다. 함수 범위 내에서 코드를 래핑하고 다른 라이브러리와의 충돌을 줄입니다. 이를 IIFE(Immediate Invoked Function Expression) 또는 자체 실행 익명 함수라고 합니다.
구문은 다음과 같습니다 -
(function() { // code })();
위에서 볼 수 있듯이 다음 괄호 쌍은 괄호 안의 코드를 표현식으로 변환합니다 -
function(){...}
또한 다음 쌍, 즉 두 번째 괄호 쌍이 작업을 계속합니다. 위의 식에서 나온 함수를 호출합니다.