#3.0 Call Signatures
#3.1 Overloading
Call Signatures
•
함수 이름 위에 커서를 올렸을 때 뜨는 파라미터 타입 정보와 리턴 타입 정보를 말한다.
•
함수를 어떻게 호출해야 하는지와 반환이 어떻게 되는지 알려주는 정보
type Add = (a: number, b: number) => number;
// call signatures를 선언해두어서 파라미터 타입, 함수 리턴타입을 명시하지 않아도 된다.
const add:Add = (a, b) => a + b;
TypeScript
복사
Overloading
// Add 타입은 파라미터를 2개를 받을 수도 있고, 3개를 받을 수도 있다.
type Add = {
(a: number, b: number): number
(a: number, b: number, c: number): number
}
// 세 번째 파라미터 c는 필수가 아닌 옵션 파라미터
const add:Add = (a, b, c?: number) => {
if(c) return a + b + c; // 세 번째 파라미터가 있을 경우
return a + b;
}
TypeScript
복사