ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • type alias란.
    typescript 2022. 1. 17. 20:39

    1)

    객체의 타입을 지정할 때

    이렇게 객체 선언과 할당 시 타입을 함께 써서 해당 객체의 타입을 지정해줄 수 있지만

     

    이렇게도 가능하다.

    즉, Animal이라는 타입을 먼저 리터럴로 지정하는것인데,

     

    이것을 타입 alias라고한다.

     

    그리고 이 타입 alias를 변수 선언 시 식별자 오른쪽에 지정해줄 수 있다.

     

    또한 alias 작성 시 이름의 첫 글자는 대문자로 하는것이 일반적이다.

     

     

    2)

    alias를 만들어줄 때 수정을 허용해주기싫은 프로퍼티에

     

    readonly라는 속성을 넣어줄 수 있는데,

     

    이러면 ts파일 안에서는 readonly 속성이 들어간 프로퍼티를 수정할 때 에러를 감지해줄 수 있다.

     

    다만 실제 구동되는 js파일에서는 막지못한다.

     

     

     

    3)

    함수의 파라미터가 옵션의 속성을 가질 경우 ?를 쓸 수 있다고 했는데,

     

    객체 프로퍼티 역시 옵션일 때 ?를 사용할 수 있다.

     

    그렇다면 옵션 프로퍼티에 값이 지정되지않았을 경우

     

    역시 undefined가 value로 할당된다.

     

    즉, color?: stringcolor: string | undefined와 같다.

     

    그리고 저 '네모2'라는 객체의 color는 undefined가 된다.

     

     

     

    4)

    alias로 지정한 타입 역시 union 타입으로 만들어주거나 

     

    타입을 합칠 수도 있다.

    union 타입을 생성할 때는 | 기호를 사용하지만,

     

    타입을 합칠 때는

    & 기호를 사용한다.

     

    &는 intersection type.

     

    즉, 교집합 타입이라는 뜻인데,

     

    양 옆의 타입 모두 만족하도록 요구하는 타입인것이다.

     

    union타입과 대조되는 기능을 갖고있으며,

     

    intersection type, union type 모두 if 연산자와 비슷하지만 기호를 두 개 쓰지않고 하나만 사용한다.

     

    그리고 type alias로 만들어준 타입은

     

    const 변수처럼 같은 이름으로 재선언, 재정의가 불가능하다.

     

    알아두자.

Designed by Tistory.