JavaScript

[JavaScript] 즉시 실행 함수

FRDYtheme 2022. 12. 2. 10:43

즉시 실행 함수

  • 함수 선언과 동시에 실행되는 함수. (호출 x)
  • 한 번만 호출되기 때문에 주로 초기화 값으로도 많이 사용.
  • 전역으로 선언되는 것을 방지.

 

함수 선언문을 즉시 실행 함수로 작성

괄호로 function을 감싸서 작성.

  ( function 이름(){} ) ();
  ( function 이름(){}() );
  (function fn1() {
    let a = 5,
      b = 10;
    console.log(a * b);
  })();
  //함수를 호출하지 않아도 선언과 동시에 50 출력
  
  
  (function fn2() {
    let a = 10,
      b = 20;
    console.log(a * b + a);
  }());
    //함수를 호출하지 않아도 선언과 동시에 210 출력

 

함수 표현식(익명함수)을 즉시 실행 함수로 작성

  (function(){})(); (function(){}());
  let num = 100;
  
  (function(){
    let num = 2;
    console.log(`함수 내 num:${num}`);
  })();
  
  console.log(`함수 밖 num: ${num}`);

 

매개변수 대입

  const fn3 = x => console.log(`매개변수 x의 값은 ${x}이다.`);
  fn3(10);

매개 변수에 값을 전달할 때 인수를 뒤에 오는 ()안에 작성하면 된다.

  (function(x, y) {
    console.log(`매개변수 x, y의 값은 ${x}, ${y}이다.`)
    })(3, 7);

변수 대입

  // 변수 대입
  (myFn = function(a, b) {
    console.log(a + b);
  })(`재미있는`, `자바스크립트`);
  
  // 즉시 실행 함수로 자동으로 한 번 '재미있는자바스크립트' 출력
  
   myFn(`변수에`,`대입`)
   // 함수에 다른 인수를 전달해서 호출. '변수대입' 출력

 

'JavaScript' 카테고리의 다른 글

[JavaScript] 콜백 함수  (0) 2022.12.02
[JavaScript] 중첩 함수/ 내부 함수  (0) 2022.12.02
[JavaScript] 지역 변수 / 전역 변수 (scope)  (0) 2022.12.02
[JavaScript] 기본 연산자  (0) 2022.12.01
[JavaScript] 객체의 형 변환  (0) 2022.12.01