윤제니

JavaScript - 함수(Function), 선언적함수, 익명함수, 람다함수, return 본문

JavaScript/JavaScript

JavaScript - 함수(Function), 선언적함수, 익명함수, 람다함수, return

꿈다루 2020. 5. 1. 23:36

함수(Function)

 : 프로그램의 특정 부분을 처리하기 위한 목적

   실행문들을 집합 형태로 만들어야 할 때 실행문들을 하나의 집합 형태로 만드는 것 

   하나의 기능이 되어 반복적으로 호출해서 사용 가능 

  • 선언적함수
  • 익명함수

 

선언적함수

 : 함수를 호출할 때 함수의 앞 또는 에서 호출 가능 

function 함수명( ) {

  실행문;

}

함수명( );

 

변수함수가 저장되면 그 변수는 함수가 된다.

 예) 선언적 함수를 변수에 저장하여 함수로 만들어 보자

 설명) view변수를 만들고 변수값으로 show( )함수를 저장.

          but, ' var view=show( ) ' 형태저장 NO!!!!

          view 변수는 함수이기 때문에 view( )로 호출 가능 

          view( ) 함수를 호출하는 것 = show( ) 함수를 호출하는 것

 

 아래와 같은 형태도 가능

 

 

익명함수

 : 함수명이 없는 ' function( ) ' 형태로 저장

   '선언적 함수'와 달리 변수에 저장되는 함수 테이터함수명을 가지고 있지 않다. 

  • 함수 호출 부분에 주의
  • '선언적함수' 호출시 함수의 앞이나 뒤에서 호출가능  /  '익명함수' 호출시 반드시 '익명함수'생성 이후에 호출 가능 
  • '익명함수'도 변수에 저장되는 데이터이기 때문에 변수가 생성되지 않은 상태에서 호출 불가 

- 익명함수 호출 위치 

 

 => 보통 함수에는 '선언적함수'처럼 함수명을 가지고 있거나 함수명이 없더라도 '익명함수'처럼 변수명이 함수명을 대신한다.

      이름을 가지고 있다는 것은 필요할 때 언제든지 호출이 가능하다는 뜻 

      그러나, 함수 중에는 필요에 따라 일회용으로 사용되는 함수도 존재. 그것을 '람다(lamda)함수' 라고 한다.

 

 

람다(Lamda)함수

 : 함수의 이름이 존재하지 않음 

(function() {

  실행문;

})();

 

 

return

 : 함수에서 처리된 결과값을 해당 함수를 호출한 곳으로 되돌려 준다.

설명)

  1. console.log( )에서 a( ) 함수가 호출되었으므로 a( )로 이동
  2. a( ) 함수가 실행
  3. a( ) 함수를 호출한 1번의 a( )로 값을 돌려 주어 console.log(20)이 되고 20값을 출력

 => 함수 안에서 return을 만나게 되면 해당 함수를 호출한 곳으로 값을 되돌려 주고 호출된 함수는 종료가 된다.