타입 별칭을 내가 만들 수 있다.
// 타입을 내가 지정 할 수 있다.
type Animal = { name : string, age : number }
let 동물 : Animal = {name : 'kim', age : 20 }
object readonly 속성 (object 속성 안에 타입을 수정 못하게 막을 수 있다.)
const 출생지역 = { region : 'seoul' };
// 자료 변경됨
출생지역.region = 'busan';
type Girlfriend = {
readonly name : string
}
const 여친 : Girlfriend = {
name : '엠버'
}
// 수정하려고 하면 에러 발생함.
여친.name = '유라'
타입 별칭 extend (union type)
type Name = string;
type Age = number;
// union Type으로 합치기 가능.
type Person = Name | Age;
타입 별칭 extend (&)
type PositionX = { x : number };
type PositionY = { y : number };
// 안에 있는 타입을 합치고 싶다.
type NewType = PositionX & PositionY;
// { x : number, y : number }
<aside> ♻️ 타입은 재 정의가 불가능하다.
</aside>
object 타입을 정의한 type alias 두개를 & 기호로 합칠 때 중복된 속성이 있으면 어떻게 될까요?
type NumberX = { x: string; z: number };
type NumberY = { x: string; y: string };
type NewType = NumberX & NumberY;
const obj: NewType = { x: 'hello', z : 2, y : 'oh' };
겹치는 속성은 override 된다.