■ Optional
변수명 뒤에 ?를 붙여 사용하며 optional 로 없어도 되는 값
function abc(a: number, b?: number) {}
abc(1);
abc(1, 2);
■ Generic
generic 으로 타입을 나중에 지정할 수 있다
function add<T>(x: T): T {
return x;
}
add(1);
add('1');
extends 로 타입에 제한을 줄 수도 있다
function add<T extends number>(x: T): T {
return x;
}
add(1);
add('1'); // ERROR
// extends 사용 예시
// <T extends {...}>
// <T extends any[]>
// <T extends (...args: any) => any>
// <T extends abstract new (...args: any) => any> // 생성자로 제한을 주고 싶을 때
'Language > TypeScript' 카테고리의 다른 글
공변성과 반공변성 (2) | 2023.03.18 |
---|---|
기본값 (0) | 2023.02.25 |
클래스 (0) | 2023.02.21 |
readonly, index Signature, Mapped Types (0) | 2023.02.20 |
{} , Object (0) | 2023.02.19 |