Interface와 Type는 사용상에 있어서 닮은 점이 많아 정리하고자 한다.
Interface와 Type 둘 다 상속할 수 있지만 방식이 조금 다르다.
Interface
interface IExample1 {
x: number;
y: number;
}
interface IExample2 extends IExample1 {
z: number;
}
Type
type TExample1 = {
x: number;
y: number;
}
type TExample2 = TExample2 & {
z: number;
}
Interface가 Type을 상속
type TExample3 = IExample1 & {
z: number;
}