즉시 실행 함수 (IIFE, Immediately Invoked Function Expression)
한 번만 실행하고 다시는 실행할 필요가 없는 함수를 작성할 때 사용한다. 즉시 실행 함수는 함수를 정의하자마자 실행하게 만들어져있고 딱 1회만 실행되고 다시는 호출할 수 없도록 만들어졌다.
특징
- 정의되자마자 바로 실행됨
- 익명 함수를 사용함
- 딱 1회만 실행되고 다시는 실행되지 않음
- 초기화 코드나 모듈화 패턴을 만들 때 유용하게 사용
즉시 실행 함수는 정의하자마자 실행하고 휘발시킬 것이기 때문에 함수명을 지어줄 필요가 없다. 그리고 3번과 같은 특성 때문에 즉시 실행 함수는 초기화를 하는 모듈을 만들 때 자주 사용된다. 모듈은 결합도를 낮춰서 외부 코드와 떼어놓고 독자적으로 사용하기 쉽도록 만드는 것이 핵심이다. 즉시 실행 함수 안에 있는 변수들은 함수 외부에서 접근할 수 없기 때문에 전역 네임스페이스를 더럽히지 않는다.
즉, 변수를 전역으로 선언하는 것을 피하거나 일회성으로 사용할 때 사용하는 것이다.
사용법
(function (params) {
// 작성한 코드
}) (args);
useEffect(() => {
(async () => {
const response = await fetch("https://~~");
const json = await response.json();
})();
}, []);
'헷갈리는 개념 정리' 카테고리의 다른 글
비동기 병렬 처리 (0) | 2022.09.13 |
---|---|
모듈(module) 시스템 정리 (0) | 2022.05.15 |
Nullish Coalescing (?? 연산자) 와 Optional Chaning(?. 연산자) (0) | 2022.05.10 |
1. /* VS. /** (0) | 2022.04.28 |