FUNCTION TYPES
함수 타입은 입력과 출력의 약속을 코드에 남긴다
타입스크립트의 함수 정의는 매개변수 타입과 반환 타입을 함께 선언한다. 이 약속 덕분에 잘못된 인자, 빠진 반환값, 맞지 않는 함수 표현식을 실행 전에 발견할 수 있다.
Parameters
Return
Alias
입력
x: number처럼 매개변수 옆에 타입을 둔다
출력
): number처럼 반환 타입을 명시한다
없음
반환값이 없으면
void를 사용한다
함수 시그니처는 호출 가능한 모양 정의
인자의 타입, 개수, 반환 타입이 맞아야 안전하게 호출할 수 있다.
입력
add(x: number, y: number)
함수가 받을 수 있는 인자의 타입과 개수를 제한한다.
계산
함수 본문
타입이 보장된 값으로 내부 로직을 작성한다.
출력
): number
호출자가 어떤 타입의 결과를 받는지 미리 알 수 있다.
재사용 가능한 함수 타입 계약
함수 표현식, 화살표 함수, 콜백이 같은 모양을 공유할 때 타입 별칭이 읽기 쉽다.
직접 선언
function add(a: number, b: number): number처럼 함수
옆에 바로 쓴다.
타입 별칭
type Calc = (a: number, b: number) => number로
모양을 이름 붙인다.
오류 차단
add("1", 2)나 문자열 반환처럼 계약과 다른 사용을
컴파일 단계에서 막는다.