더북(TheBook)

옵셔널 파라미터는 ?로 표기합니다. 선택적으로 사용하고 싶은 파라미터의 오른쪽에 다음과 같이 ?를 붙이면 됩니다.

function sayMyName(firstName: string, lastName?: string): string {
  return 'my name : ' + firstName + ' ' + lastName;
}

이 함수는 두 번째 파라미터에 ?를 붙여서 옵셔널 파라미터로 정의했습니다. 따라서 두 번째 파라미터인 lastName은 호출할 때 넘겨도 되고 넘기지 않아도 됩니다. 다음과 같이 말이죠.

▲ 그림 3-6 두 번째 인자가 생략되었지만 나타나지 않는 타입 에러

이제는 sayMyName 함수를 호출할 때 두 번째 인자를 넘기지 않아도 타입 에러가 발생하지 않습니다. 이처럼 옵셔널 파라미터를 이용하면 함수에 인자를 선택적으로 넘길 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.