본문 바로가기
javaScript/J Query & 스크립트

IIFE 즉시 실행 함수를 사용하는 이유

by mooyou 2022. 12. 20.
728x90
300x250

 

충돌방지

자바스크립트의 클로저 현상 때문에 IIFE 내부의 정의된 변수와 함수는 외부에서 접근 할 수 없다.

(function myFunc() {
  var text  = "hello world!";
  return console.log(text);
})();
myFunc();//text is not defined

따라서 IIFE형식을 사용하면 코드의 충돌을 막을 수 있다.

 

라이브러리 전역 변수 충돌 방지

jQuery나 Prototype 라이브러리는 $ 전역변수를 동일하게 사용하기 때문에 충돌이 생길 수 있는데 

이때 IIFE 함수를 이용해서 충돌을 막을 수 있다.

(function ($) {
    // jQuery
})(jQuery);

 

 

변수에 즉시 실행 함수를 저장

 

즉시 실행 함수는 한 번의 실행만 필요로 하는 초기화 코드 부분에 많이 사용되는데 전역에 변수를 추가하지 않아도 충돌 없이 코드를 구현할 수 있다.

 

 

 

 

 

참고

https://findawayer.tistory.com/entry/IIE%EC%9D%98-%EC%9D%98%EB%AF%B8%EB%8A%94

 https://velog.io/@tlatjdgh3778/%EC%A6%89%EC%8B%9C-%EC%8B%A4%ED%96%89-%ED%95%A8%EC%88%98IIFE%EC%97%90-%EB%8C%80%ED%95%9C-%EC%A0%95%EB%A6%AC

728x90
반응형

댓글