♥ 코딩(Coding)/자바스크립트(JavaScript)
(+추가)함수관련
디자이너 윈썸
2022. 6. 28. 13:02
▶ 선언적 함수
** 선언적 함수의 형식
function 함수( ) { 실행문; } |
function compute( ) { console.log('선언적 함수'); } |
** 선언적 함수의 호출
'선언적 함수'는 함수를 호출할 때 함수의 앞 또는 뒤에서 호출 가능
function compute( ) { console.log( '선언적 함수' ); } compute( ) |
compute( ) function compute( ){ console.log('선언적 함수'); } |
변수나 함수를 선언하지 않고 호출하였을 때 는 에러가 발생해야 하는 것이 맞지만, let 또는 var 선언한 변수의 선언적 함수는 변수, 함수 선언 이전에 호출하여도 에러를 발생시키지 않습니다. 이러한 자바스크립트 성질을 '끌어 올리기' 호이스팅(Hoisting)이라고 합니다.
▶ 익명 함수
** 익명 함수의 형식
변수에 함수 데이터를 저장하여 변술를 마치 함수처럼 사용 할 수 있도록 만들어줌
let 변수 = function( ) { 실행문; }; |
let compute = function( ) { console.log( '익명 함수'); }; |
** 익명 함수의 호출
익명 함수는 변수 선언 이후에 호출해야 함
let compute = function( ) { console.log('선언적 함수'); }; compute( ); |
O |
compute( ); // 익명함수는 변수 선언 이전에 함수를 호출 할 수 없음 let compute = function( ) { console.log('선언적 함수'); }; |
X |
** 즉시 실행 함수
익명 함수 중에는 필요에 따라 일회성으로 사용되는 함수도 있음
'즉시 실행 함수'는 선언과 동시에 함수가 실행되며 함수명이 없기 때문에 재호출 할 수 없음
보통 처음 한번만 실행하는 초기화 코드에 사용됨
** 즉시 실행 함수의 형식
( function( ) { 실행문; })( ); |
( function( ) { let sum = 10; console.log(sum); })( ); |
▶ 재귀 함수
함수 안에서 자신의 함수를 다시 호출하는 함수
function factorial( n ) { if( n === 0 ) { console.log( '호출 끝' ); }else { console.log( '호출' + n ); factoral( n-1 ); } } factorial( 10 ); |