기본 매개변수(Default Parameters)란?
자바스크립트에서 기본 매개변수(Default Parameters)는 함수를 더욱 유연하고 간결하게 작성할 수 있도록 도와주는 ES6(ES2015) 문법입니다. 함수 호출 시 인수가 전달되지 않거나 undefined가 전달될 경우, 해당 매개변수는 미리 지정해 둔 기본값으로 자동 초기화됩니다. 덕분에 함수 내부에서 일일이 값의 존재 여부를 검사하는 번거로움 없이 안전하게 코드를 작성할 수 있습니다.
기본 매개변수 사용 예제
아래 예제는 두 수를 더하는 함수에서 증가값(inc)의 기본값을 1로 설정한 live demo입니다.
<html>
<body>
<script>
// inc의 기본값은 1로 설정
function inc(val1, inc = 1) {
return val1 + inc;
}
document.write(inc(10,10));
document.write("<br>");
document.write(inc(10));
</script>
</body>
</html>실행 결과
inc(10, 10)처럼 두 번째 인수를 직접 전달하면 기본값이 무시되고 전달된 값 10이 사용되어 20이 출력됩니다. 반면 inc(10)처럼 두 번째 인수를 생략하면 기본값인 1이 적용되어 11이 화면에 표시됩니다.
기본값이 적용되는 조건
기본 매개변수의 기본값은 인수가 아예 전달되지 않았거나 명시적으로 undefined가 넘어온 경우에만 적용됩니다. null, 0, 빈 문자열("") 등은 유효한 값으로 취급되므로 이런 값이 전달되면 기본값 대신 그대로 사용된다는 점에 유의해야 합니다.