즉시 실행 함수 (IIFE)
: 함수를 선언하자마자 바로 호출되는 함수
: 함수에 이름을 붙이는 기명함수로도 사용할 수 있지만, 즉시 실행 함수는 재사용이 불가하기 때문에 익명 함수를 주로 사용한다.
익명 즉시 실행 함수
(function () {
console.log("IIFE");
})();
// 화살표 함수로도 사용 가능하다
(() => {
console.log("IIFE");
})();
기명 즉시 실행 함수
(function square(x) {
console.log(x*x);
})(2);
(function square(x) {
console.log(x*x);
}(2));
즉시 실행 함수 사용 이유
- 불필요한 전역변수의 생성을 줄일 수 있다.
: 기본적으로 함수를 생성하면 해당 함수는 전역변수로 남아있게 되고, 이렇게 많은 변수의 생성은 전역 스코프를 오염시킬 수 있지만, 즉시 실행 함수를 선언하면 전역으로 저장되지 않기 때문에 오염을 줄일 수 있다.
*참고자료*
https://jongminfire.dev/java-script-%EC%A6%89%EC%8B%9C%EC%8B%A4%ED%96%89%ED%95%A8%EC%88%98-iife
'Front-End > JavaScript' 카테고리의 다른 글
[JavaScript] 동기 처리, 비동기 처리, 콜백함수 (0) | 2023.01.09 |
---|---|
[JavaScript] 구조 분해 할당(Destructuring assignment) (0) | 2023.01.08 |
[JavaScript] 객체 (Object) (1) | 2023.01.08 |
[JavaScript] 템플릿 리터럴(Template Literal) (0) | 2023.01.08 |
[JavaScript] 배열(Array) (0) | 2023.01.08 |