# 즉시실행함수
즉시실행함수는 문자 그대로 정의하는 즉시 실행하는 함수를 말한다. 즉시실행 함수는 원치 않는 호이스팅 방지와 전역변수의 오염을 막기 위해 사용한다.
(function (매개변수) {
//함수내용
})(인자));
즉시실행 함수의 기본 토대로 일반 함수와의 차이로는 함수자체가 괄호()로 감싸여 있으며 마지막에 세미콜론 ; 을 붙인다는 점이다. 또한 매개변수를 넣는 방법에도 약간의 차이가 있는데 마지막에 있는 괄호에 인자를 넣어주면 일반 함수처럼 매개변수를 사용할 수 있다는 점이다.
즉시실행함수의 경우 함수명을 지정해주는 기명함수와 함수명을 지정하지 않는 익명함수 모두 사용할 수 있다. 즉시실행함수 한번 사용하면 재사용이 불가능 하며 함수내에서 선언된 변수는 함수 외부에 영향을 미치지 않는다.
let variable = (function fn() {
// 함수내용
})();
다음과 같이 사용하면 변수 variable을 이용해 함수 fn의 결과값을 계속 이용할 수 있다. 즉시실행함수를 사용하는 이유는 메모리 절약을 위해서 사용하는데 자바스크립티에서 함수는 프로그램이 실행될때 함수들은 기본적으로 호이스팅 되는데 많은 함수들이 호이스팅되면 프로그램 속도에 영향을 줄 수 있어 최적화를 위해 사용한다.
또한 즉시실행함수 내에서 작성된 변수는 해당 함수내에서만 사용되기 때문에 전역스코프에 영향을 끼치지 않아 예기치 못한 에러를 막을 수 있기 때문에 사용한다.
# 예제
(function (para, meter) {
console.log(para+meter);
}) (10, 30);
다음과 같이 작성하면 콘솔창에 40의 값이 나타나는 것을 볼 수 있다.
'웹프로그래밍 > Javascript' 카테고리의 다른 글
Javascript(자바스크립트) 함수 만들기 (0) | 2024.05.03 |
---|---|
Javascript(자바스크립트) 조건문 if (1) | 2024.04.17 |
Javascript(자바스크립트) 반복문 for, while (0) | 2024.04.16 |
Javascript(자바스크립트) 배열 만들기 (0) | 2024.04.15 |
Javascript(자바스크립트) 변수와 상수 만들기 (0) | 2024.04.11 |