[typescript] 기본 매개변수와 선택적 매개변수

매개변수(parameter)는 함수에 입력으로 전달되는 값을 의미합니다. TypeScript에서는 매개변수를 선언하는 방법과 그에 따른 다양한 옵션들이 있습니다. 여기서는 TypeScript에서의 기본 매개변수(default parameters)와 선택적 매개변수(optional parameters)에 대해 알아보겠습니다.

기본 매개변수(Default Parameters)

기본 매개변수는 매개변수에 기본 값을 설정할 수 있는 기능을 제공합니다. 매개변수가 전달되지 않을 경우, 그 매개변수는 지정된 기본 값으로 초기화됩니다. 이 기능을 사용하여 함수 내에서 특정 매개변수가 전달되지 않았을 때의 처리를 간편하게 할 수 있습니다.

다음은 TypeScript에서 기본 매개변수를 사용하는 예제입니다.

function sayHello(name: string = 'Guest') {
    console.log(`Hello, ${name}!`);
}

sayHello(); // 출력: Hello, Guest!
sayHello('Alice'); // 출력: Hello, Alice!

위 예제에서 sayHello 함수는 name 매개변수의 기본 값을 'Guest'로 지정하여, 해당 매개변수를 전달하지 않았을 때에는 'Guest'로 초기화되도록 설정되었습니다.

선택적 매개변수(Optional Parameters)

선택적 매개변수는 매개변수에 undefined 또는 실제 값 중 하나를 입력으로 받을 수 있는 기능을 제공합니다. 매개변수 이름 뒤에 물음표(?)를 붙여 해당 매개변수를 선택적으로 지정할 수 있습니다. 선택적 매개변수는 함수를 호출할 때 그 매개변수를 생략할 수 있습니다.

다음은 TypeScript에서 선택적 매개변수를 사용하는 예제입니다.

function greet(name: string, greeting?: string) {
    if (greeting) {
        console.log(`${greeting}, ${name}!`);
    } else {
        console.log(`Hello, ${name}!`);
    }
}

greet('Bob'); // 출력: Hello, Bob!
greet('Alice', 'Good morning'); // 출력: Good morning, Alice!

위 예제에서 greet 함수는 greeting 매개변수를 선택적으로 받아들일 수 있도록 ?를 붙여 정의되었습니다. 이를 통해 greet 함수를 호출할 때 greeting 매개변수를 전달하지 않아도 되며, 이에 대한 처리 또한 구현될 수 있습니다.

결론

TypeScript에서는 기본 매개변수와 선택적 매개변수를 제공하여 함수 정의 시 유연성을 제공합니다. 이러한 기능을 활용하여 코드를 간결하게 작성하고, 다양한 상황에 대비할 수 있습니다.

더 많은 정보는 TypeScript 공식 문서를 참고하세요.