이정환 님의 한 입 크기로 잘라먹는 타입스크립트 를 수강한 내용 입니다.
함수 타입
우선 기본적인 자바스크립트 함수 입니다.
그럼 타입스크립트에서는?
화살표 함수 타입 정의하기
함수 선언식과 크게 다르지 않습니다.
매개변수 기본 값 설정하기
함수의 매개변수에 기본값이 설정 되어있으면 타입이 자동으로 추론 됩니다.
- 이럴 경우 타입 정의를 생략해도 됩니다.
선택적 매개변수 설정
매개변수의 이름 뒤에 물음표(?)
를 붙여주면 선택적 매개변수가 되어 생략이 가능합니다.
⚠️ 주의점
위의 코드의 같은 선택적 매개변수의 타입은 자동으로 undefined와 유니온 된 타입
으로 추론됩니다.
따라서 tall의 타입은 현재
number | undefined
이 됩니다.그러므로 이 값이 number 타입의 값일 거라고 기대하고 사용하려면 다음과 같이 타입 좁히기가 필요합니다.
⚠️ 필수 매개변수 보다 앞으로 No
선택적 매개변수는 필수 매개변수 앞에 올 수 없습니다.
- 반드시 뒤에 배치해야 합니다.
나머지 매개변수(...)
자바스크립트의 rest 파라미터(나머지 매개변수) 관련 내용입니다.
만약 나머지 매개변수의 길이를 고정하고 싶다면 ?
- 튜플 타입을 사용하면 됩니다.