약간 이상하게 보일 수 있지만(논란의 여지가 있지만, 약간 이상하다) 값이 undefined인 경우 기본값이 적용된다는 사실로 되돌아간다. 인수가 제공되지 않아서 자주 발생하지만 undefined가 명시적으로 제공되었기 때문일 수도 있다. 코드 3-2의 코드를 실행하자.
코드 3-2 첫 번째 매개변수 기본값 지정하기–default-first-parameter.js
function animate(type = "fadeout", duration) {
console.log(type + ", " + duration);
}
animate("fadeout", 300); // "fadeout, 300"
animate(undefined, 300); // "fadeout, 300" (다시)
animate("fadein", 300); // "fadein, 300"
animate(); // "fadeout, undefined"