- 속성 타입
- 선택적 속성
- ? 물음표
interface Book { author**?**: string; pages: number; }
- 읽기 전용 속성
- readonly
interface Page { **readonly** text: string; }
- 선택적 속성
- 호출 시그니처 (call signature)
- 함수를 호출하는 방법에 대한 타입 시스템 설명
- 매개변수의 목록과 반환 타입을 포함한다.
- 인덱스 시그니처 (index signature)
- 임의의 key를 받고 해당 key에 대한 value의 타입 지정
- 인덱스 시그니처를 사용하여 프로퍼티의 존재 유무를 알 수 없다.
- 중첩 인터페이스 (Nested Interface)
- 속성의 타입이 다른 인터페이스나 객체 타입을 가질 수 있다.
- interface 확장(extends)
- interface B extends A { … }
- interface 다중 상속(확장)
- 프로퍼티는 동일한 타입이어야 한다.
- interface C extends A, B { …}
- interface 병합(merge) 활용
- 동일 프로퍼티 이름을 가질 경우 같은 타입이어야 한다.
- interface A {id: number;}
- interface A {name: string;}
- let a: A = {id: 1, name: ‘Hong’};
- 동일 프로퍼티 이름을 가질 경우 같은 타입이어야 한다.
728x90
'JS & TS > TypeScript' 카테고리의 다른 글
[TypeScript] 타입 제한자 (0) | 2024.02.15 |
---|---|
[TypeScript] Class (0) | 2024.02.13 |
[TypeScript] Array, Tuple (0) | 2024.02.13 |
[TypeScript] Function (0) | 2024.02.13 |
[TypeScript] Object (0) | 2024.02.13 |