[ TypeScript ] 함수 오버로딩과 커스텀 타입가드로 복잡한 타입 관리하기
·
📍 프로그래밍 언어/TypeScript
💡 함수 오버로딩합수의 오버로딩이란 하나의 함수를 매개변수의 개수나 타입에 따라 다르게 동작하도록 만드는 문법입니다. 하나의 함수명을 func이고 모든 매개변수의 타입을 number라고 가정합니다. 저는 2가지 버전의 함수를 만들어보려고 합니다. ⓵ 매개변수가 1개일 때 매개변수에 20을 곱한 값을 출력하는 함수⓶ 매개변수가 3개일 때 모든 매개변수를 더한 값을 출력하는 함수 function func(a: number): void;function func(a: number, b: number, c: number): void; 타입스크립트에서 함수 오버로딩을 구현하기 위해서는 먼저 다음과 같이 버전별 오버로드 시그니쳐를 만들어 주어야 합니다. 이렇게 구현부 없이 선언부만 만들어둔 함수를 오버로드 시그니..