본문 바로가기
Javascript

[자바스크립트] 즉시실행함수

by hunbal 2023. 2. 1.
SMALL

즉시실행함수

즉시실행함수 (IIFE, Immediately Invoked Function Expression)는 정의되자마자 즉시 실행되는 함수를 말한다.

  • 괄호가 2개 들어감
  • 첫번째 - 함수의 선언부
  • 두번째 - 함수 호출하는 괄호
(function () {
    console.log("IIFE");
})();

// 화살표 함수로도 사용 가능하다
(() => {
    console.log("IIFE");
})();

실행시 선언과 동시에 IIFE를 출력한다!

즉시실행함수는 선언과 동시에 호출되어 반환되어 재사용 할 수 없기 때문에 이름을 지어주는 것이 의미가 없다.

 

 

즉시실행함수를 왜 사용할까?

 

1. 필요없는 전역 변수의 생성을 줄일 수 있다.

  • 함수를 생성하면 그 함수는 전역 변수로써 남아있게 되고, 많은 변수의 생성은 전역 스코프를 오염시킬 수 있다.
  • 즉시실행함수를 선언하면 내부 변수가 전역으로 저장되지 않기 때문에 전역 스코프의 오염을 줄일 수 있다.

 

2. private한 변수를 만들 수 있다.

  • 즉시실행함수는 외부에서 접근 할 수 없는 자체적인 스코프를 가지게된다. 이는 클로저의 사용 목적과도 비슷하며 내부 변수를 외부로부터 private하게 보호 할 수 있다는 장점이 있다.

 

 

즉시실행함수는 한 번의 실행 이후 없어지기 때문에 단 한번의 사용한 필요한 함수에 사용된다. 대표적인 예시로는 변수를 초기화 하는 함수

 

참고자료

 

 

 

'Javascript' 카테고리의 다른 글

eval 함수  (0) 2023.10.17
[자바스크립트] 함수  (0) 2023.02.02
[자바스크립트] 호이스팅  (0) 2023.02.01
[자바스크립트] 프로토타입  (0) 2023.02.01
[자바스크립트] 변수  (0) 2023.02.01

댓글