매개변수를 정의하는 자리에서
매개변수의 타입 오른쪽에 =
를 사용해서 매개변수의 default 값을 정의할 수 있다.
기본값이 정의된 매개변수는 호출 시 따로 인자를 전달하지 않을 시 기본값을 사용한다.
기본값이 있는 매개변수는 선택 매개변수(자세히)이다.
rule
function funcName(
input1: type = defaultValue
, input2: type ) : type { ... }code Ex
function getInfoText( name: string, age: number = 15, language = 'korean', ) : string { ... } )
age와 language는 기본값이 정의되었으므로, 인자를 전달받지 않아도 각 15와 'korean'을 기본값으로 사용한다.
자바스크립트는 매개변수를 초과한 인자의 전달분을 arguments변수, Rest 파라미터 문법 을 사용하여 활용할 수 있었다.
타입스크립트에선 ...초과인자변수명: string[]
과 같이 인자의 초과 전달분을 지정타입 배열
을 사용하여 활용할 수 있다.
rule
function funcName(input1: Type, input2: Type,
...초과인자변수명: type[]
): returnType { ... }code Ex
function getInfoText(name: string, age: number, ...rest: string[]): string { //... }
name, age 두개의 매개변수를 초과해 전달된 인자들은 rest라는 나머지 배열에 string으로 저장된다. 이를 함수 내에서 활용하는 방법은 javascript rest파라미터 를 참고한다.