본문 바로가기
카테고리 없음

즉시 실행 함수 ( IIFE, Immediately Invoked Function Expression ) - “Iffy”라고 발음

by 🔧🔨🛠 블로그 이전 준비 중입니다 🔧🔨🛠 2023. 2. 7.

1. 즉시 실행 함수 (IIFE)

  ㅇ 함수 정의 및 호출/실행이 동시에 이루어지는 함수 형태
     - 함수 표현식으로써 익명 함수를 만들고는, 그 즉시 함수 호출을 하는 경우

  ㅇ 특징
     - 그 내부에 자신 만의 *스코프를 갖고있어,  
     - 외부에서 접근할 수 없지만,
     - 즉시실행함수(IIFE) 자체는 함수이므로,
     - 그 스코프 밖으로 변수,배열,함수,객체 등을 반환/내보낼 수 있음

  ㅇ 구문 형식 : (function () { ... })();

  ㅇ 사용 형태 : 통상, 함수 이름이 없는 익명 함수의 사용이 일반적임


2. 즉시 실행 함수의 용도 例)

  ㅇ *라이브러리를 읽어들일 때, 
     - 그 라이브러리 전체를 즉시실행함수 내에 넣어서 실행하면,
     - 라이브러리 내 변수들이 전역 변수와의 충돌을 일으키지 않음

  ㅇ 장점
     - 즉시실행함수를 통해, 
     - 전역 유효 스코프를 오염시키지 않고서도,
     - 그 함수 내에서 만 일시적인 처리 가능

 

 

 

** 스코프 : 프로그램 내 변수에 접근할 수 있는 유효 범위/영역 

** 라이브러리:  프로그램 재사용 및 생산성 향상을 위해 프로그램 내부처리에 깊게 관여하지 않도록 도와주는 유용하고 공통적인 함수들의 집단

 


코드를 읽다 특이한 형태의 함수를 발견해 찾아보았다.

이제 코드가 읽힌다.

함수 집합인 라이브러리를 읽어들일때, 충돌 방지 및 전역 스코프 오염 방지를 위해 즉시실행 함수로 불러 일시적으로 처리한 것!


ref.

http://www.ktword.co.kr/index.php