
interface 뿐만 아니라, type별칭도 확장 가능interface Animal {
name: string;
age: number;
}
interface Dog {
name: string;
age: number;
isBark: boolean;
}
interface Cat {
name: string;
age: number;
isScratch: boolean;
}
interface Chicken {
name: string;
age: number;
isFly: boolean;
}
interface Animal {
name: string;
age: number;
}
interface Dog extends Animal {
isBark: boolean;
}
interface Cat extends Animal {
isScratch: boolean;
}
interface Chicken extends Animal {
isFly: boolean;
}
const dog: Dog = {
name: "hello",
age: 22,
isBark: true,
};
동일한 코드를 extends로 슈퍼타입에 확장 시켜주어 더욱 더 코드가 간결해진 것을 볼 수 있다.
A extends B
A를 B로 확장
이는 확장 또는 상속이라고도 불림
또, 상속을 받는 인터페이스에서 아래 코드와 같이 리터럴 타입을 지정할 수도 있다.
interface Dog extends Animal {
name: "kjkj";
isBark: boolean;
}
name은 따로 지정을 못함.한 입 크기로 잘라먹는 타입스크립트
https://www.inflearn.com/course/한입-크기-타입스크립트/dashboard