freezner

[JS] 자바스크립트 함수 인자 디폴트 처리방법

보통 개발 언어에서는 함수 인자가 없는 경우 디폴트 값을 지정이 가능합니다.

PHP를 예로 들어보겠습니다.

function test($a = 1, $b = 2) {
   return $a + $b;
}

test();
결과값 => 3

이처럼 인자가 없는 경우 설정된 기본값이 대입되어 처리됩니다. 자바스크립트의 경우는 처리 방법이 조금 다릅니다. 정확히 말하자면 자바스크립트에는 함수 인자 기본 옵션을 줄 수 없습니다. 때문에 함수 안에서 인자를 체크하여 기본값 처리하는 부분이 들어가야 합니다.

function test(a, b) {
   a = typeof a !== 'undefined' ? a : 1;
   b = typeof b !== 'undefined' ? b : 2;

   return a + b;
}

test();
결과값 => 3

자바스크립트에서는 인자가 없는 경우 undefined 라는 자료형으로 참조됩니다. 이런 특성을 체크하여 인자가 없는 경우 기본 값을 설정해 줄 수 있습니다.

Exit mobile version