[typescript] 함수 타입 지정하기

TypeScript는 정적 타입 지정을 통해 JavaScript 프로그램의 안정성을 높여줍니다. 함수에 대한 타입을 명시적으로 지정하는 것은 코드의 가독성을 높이고 버그를 줄일 수 있는데 도움이 됩니다.

기본적인 함수 타입 지정

함수의 매개변수와 반환 타입을 명시적으로 지정할 수 있습니다. 다음은 간단한 예제입니다.

function greet(name: string): string {
    return `Hello, ${name}!`;
}

위 예제에서 name 매개변수의 타입은 string으로, 반환 타입은 string으로 명시했습니다.

선택적 매개변수와 기본 매개변수

함수의 매개변수를 선택적으로 만들거나 기본 값을 제공할 수 있습니다. 아래의 예제를 참고하세요.

function greet(name: string, age?: number): string {
    if (age) {
        return `Hello, ${name}! You are ${age} years old.`;
    } else {
        return `Hello, ${name}!`;
    }
}

function greetWithDefault(name: string, age: number = 30): string {
    return `Hello, ${name}! You are ${age} years old.`;
}

위 예제에서 age 매개변수는 선택적으로 지정되었고, greetWithDefault 함수에서는 기본 값을 제공하였습니다.

콜백 함수 타입

콜백 함수의 타입을 지정할 수도 있습니다. 다음 예제를 참고하세요.

function fetchData(callback: (data: string) => void) {
    // 데이터 가져오기
    const data = "example data";
    // 콜백 함수 호출
    callback(data);
}

위 예제에서 callback 매개변수의 타입은 (data: string) => void로, data 매개변수의 타입은 string이며, 반환 타입은 void입니다.

마무리

함수의 타입을 명시적으로 지정함으로써 코드의 안정성을 높이고 가독성을 개선할 수 있습니다. TypeScript를 사용하면 추가적인 혜택들을 누릴 수 있으며, 팀원들과의 협업 시에도 많은 도움이 될 것입니다.

더 많은 정보는 TypeScript 공식 문서 에서 확인할 수 있습니다.