interface 용도
1. 타입 지정
2. class 타입 확인
class Car {
model : string;
price : number = 1000;
constructor(a :string){
this.model = a
}
}
let 붕붕이 = new Car('morning');
위 class가 model, price 속성을 가지는지 타입으로 확인하고 싶다면
=> interface + implements 키워드를 사용
interface CarType {
model : string,
price : number
}
class Car implements CarType {
model : string;
price : number = 1000;
constructor(a :string){
this.model = a
}
}
let 붕붕이 = new Car('morning');
1. interface 타입변수를 만든다.
2. extends처럼 implements라는 키워드를 클래스명 옆에 선언한다.
3. 해당 class가 interface에 있는 속성을 모두 가지고 있는지 확인이 가능하다.
=> 빠진 속성이 존재한다면 에러가 발생한다.
원래 자바에서 implements는 interface 전용 상속 문법이라고 배웠는데, 타입스크립트에서는 전혀 다른 용도로 쓰인다는 게
자바랑 타입스크립트는 친한 것 같으면서도 은근히 거리를 두는 편인가 싶기도 하다.😅 너네 당장 친해져!!
'TypeScript' 카테고리의 다른 글
object 타입 mapping (0) | 2023.07.04 |
---|---|
index signatures (0) | 2023.07.04 |
d.ts 타입 정리 파일 (0) | 2023.07.04 |
Ambient Module + declare (0) | 2023.07.04 |
Tuple type (0) | 2023.07.04 |