TypeScript에서 객체 구조 제어하기
TypeScript는 또한 객체의 구조를 제어합니다. 사용자 객체를 다음과 같이 선언했다고 가정해 보겠습니다:
let user = {name: 'john', age: 30};
선언하는 순간 TypeScript는 우리 객체에 키
'name' 과 'age' 가 있음을 기억하고,
변수에 정확히 이러한 키를 가진 객체가 저장되도록 제어합니다.
변수에 다른 객체를 쓰려고 하면 컴파일 오류가 발생합니다. 한번 시도해 보겠습니다. 키가 하나 빠진 객체를 변수에 써봅시다:
user = {name: 'eric'}; // 오류
같은 키를 가지고 있지만 추가 키가 있는 새 객체를 변수에 써봅시다:
user = {name: 'eric', age: 40, salary: 300}; // 오류
이제 'name' 과 'age' 키만 포함하는 객체를 변수에 써봅시다:
user = {name: 'eric', age: 40}; // 작동함
코드를 실행하지 않고 코드 실행 결과가 무엇일지 결정하세요:
let date = {year: 2025, month: 12, day: 31};
date = {year: 2025, month: 12};
코드를 실행하지 않고 코드 실행 결과가 무엇일지 결정하세요:
let date = {year: 2025, month: 12, day: 31};
date = {year: 2025, month: 12, date: 7};