Call Signiture는 함수를 부를 때의 모습을 말한다. 예를 들어보면,
const add = (a: number, b: number) => a+b
본 형태의 add 함수는 두 개의 number 변수를 받고, 하나의 number 변수를 리턴한다.
따라서 이 함수의 기본 구조는 다음과 같다.
add(a: number, b: number) => number
이때, 이를 우리는 Call Signature라고 한다.
하지만, TS에서는 Call Signature에서 같은 변수 타입을 가지고 리턴하더라도 따로따로 타입을 적어줘야 한다.
const add = (a: number, b: number) => a+b
const minus = (a: number, b: number) => a-b // 계속해서 타입 이름을 작성해야 함.
이러한 번거로움을 해결하기 위해서, Call Signature를 간단하게 만들 수 있는 방식이 존재 한다.
type Form = (a: number, b: number) => number
const add: Form = (a, b) => a+b
const minus: Form = (a, b) => a-b
이와 같이, 우선 type을 지정해주면 그 후에 같은 자료입력 타입과 출력 타입을 가지는 함수들은 모두 같은 type을 선언해주면 되는 것이다.
*본 내용은 노마드코더 "Typescript로 블록체인 만들기"에서 습득한 내용을 바탕으로 재구성한 것 입니다.