[typescript] 함수 오버로딩을 사용하여 다양한 타입의 매개변수를 처리하는 방법
TypeScript는 함수 오버로딩을 사용하여 다양한 타입의 매개변수를 처리할 수 있습니다. 함수 오버로딩은 함수가 여러 가지 형태의 매개변수를 받을 수 있도록 하는 기능입니다.
함수 오버로딩이란?
함수 오버로딩은 동일한 함수 이름을 가지면서 매개변수의 타입 또는 개수가 다른 여러 개의 시그니처를 갖는 것을 의미합니다. 함수가 호출될 때 TypeScript 컴파일러는 전달된 매개변수에 맞는 시그니처를 찾아 해당하는 함수 구현을 실행합니다.
함수 오버로딩 예제
아래 예제는 add
함수를 number
타입과 string
타입의 매개변수에 대해 오버로딩하는 방법을 보여줍니다.
function add(x: number, y: number): number;
function add(x: string, y: string): string;
function add(x: any, y: any): any {
return x + y;
}
위 코드에서 첫 번째와 두 번째 함수 선언은 각각 number
와 string
타입의 매개변수를 받습니다. 마지막 함수 구현은 any
타입을 받아들이고, 실제로 매개변수를 조합하여 반환값을 돌려줍니다.
함수 오버로딩의 장점
함수 오버로딩을 사용하면 동일한 기능을 가진 함수에 대해 다양한 타입의 매개변수를 받을 수 있습니다. 이를 통해 코드의 가독성을 향상시킬 수 있고, 타입에 대한 엄격한 체크를 유지하면서 유연성을 확보할 수 있습니다.
함수 오버로딩은 TypeScript에서 다형성과 유연한 타입 처리를 위한 강력한 도구 중 하나입니다. TypeScript를 사용하면서 함수 오버로딩을 적극적으로 활용해보세요!
더 자세한 내용은 TypeScript 공식 문서를 참고하시기 바랍니다. TypeScript Handbook - 함수 오버로딩