객체 타입
const user: { name: string; height: number; } = { name: '김지혜', height: 170};
- 콜론(`:`)의 우변에는 값 대신 해당 속성의 타입이 들어간다. - 구분자로 콤마(`,`) 뿐만 아니라 세미콜론(`;`)을 사용할 수 있다.
선택 속성
함수의 선택 매개변수와 비슷하게 속성명 뒤에 물음표(`?`)를 붙여 해당 속성이 존재하지 않을 수도 있음을 표현할 수 있다.
const userWithUnknownHeight: { name: string; height?: number; } = {
name: '김수한무'
};
읽기 전용 속성
속성명 앞에 readonly
키워드를 붙여 해당 속성의 재할당을 막을 수 있다. readonly
키워드가 붙은 속성은 const
키워드를 이용한 변수의 정의와 비슷하게 동작한다.
const user: {
readonly name: string;
height: numer;
} = { name: '김지혜', height: 170 };
user.name = '혜지김'; // error TS2540: Cannot assign to 'name' because it is a constant or a read-only property.