2.13 객체 간에 대입할 수 있는지 확인하는 법을 배우자
2.10절에서 객체 리터럴이 아닌 변수를 대입할 때는 잉여 속성 검사가 진행되지 않는다고 설명했습니다. 변수를 대입할 때는 객체 간에 대입할 수 있는지 여부를 따져봐야 하는데, 이번 절에서 살펴보겠습니다.
interface A {
name: string;
}
interface B {
name: string;
age: number;
}
const aObj = {
name: 'zero',
}
const bObj = {
name: 'nero',
age: 32,
}
const aToA: A = aObj;
const bToA: A = bObj;
const aToB: B = aObj;
// Property 'age' is missing in type '{ name: string; }' but required in type 'B'.
const bTob: B = bObj;