보통 개발 언어에서는 함수 인자가 없는 경우 디폴트 값을 지정이 가능합니다.
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 라는 자료형으로 참조됩니다. 이런 특성을 체크하여 인자가 없는 경우 기본 값을 설정해 줄 수 있습니다.