더북(TheBook)

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;
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.