ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Tyepscript - Union, any, unknown
    Front-end/Typesrcipt 2023. 4. 12. 11:03
    728x90
    반응형

    Tyepscript Union

    Tyepscript Union 이란 2가지 이상의 타입을 선언이 필요할때 선언할 수 있는타입이다.

    선언 방법은 변수: (타입1 | 타입2) 로 선언할 수 있다.

    let myName: (string | number) = 'kim';
    let myAge: (string | number) = 27;

     

    배열변수에서의 union type 을 선언하여 숫자 또는 문자열 배열 변수를 만들 수 있다.

    let myNumArr: (string | number)[] = [1, 'zelord', 3]; // 숫자 or 문자열 배열 타입선언

     

    배열 뿐만아니라 오브젝트변수에서도 union type 선언이 가능하다.

    let myObject: { name: (string | number) } = { name: 'zelord' };
    let myObject2: { name: (string | number) } = { name: 27 };
    // 문자 or 숫자 타입이 들어갈 수 있다.

     

    Any Type

    Any type 이란 모든 자료형의 타입을 변수에 선언할 수 있도록 해준다.

    let myAny: any;	// any 타입을 선언하면 모든 타입의 값을을 재선언 할 수 있다.
    myAny = 27;	// number 타입 변수 재할당
    myAny = 'zelord';	// string 타입 변수 재할당
    myAny = null;	// null 타입 변수 재할당
    myAny = true;	// boolean 타입 변수 재할당

    any type은 타입을 해제할 때 사용하는 문법이기도 하다.

     

     

    반응형

     

     

    Unknown Type

    Unknown Type 이란 모든 자료형의 타입을 선언할 수있도록 Any Type 과 유사하다.

    Any type 보다 Unknown type 이 안전하다.

    그 이유는 다른 타입의 변수에 any type을 할당하면 에러가 나타나지 않지만

    unknown type을 할당하면 에러가 나타난다.

     

    let myAny: any; // any type 선언
    let myUnknow: unknown; // unknown type 선언
    
    let temp :string = myAny;	// 타입이 any 라서 허용 가능
    let temp :string = unknown; // 타입이 unknown 이라서 허용 불가능

     

    또한 연산에 대해 에러표출 차이가 있다.

    let myAny: any;
    let myUnknow: unknown;
    
    myAny - 1;	// 허용 가능
    myUnknow - 1; // 허용 불가능 (에러)

     

    728x90
    반응형

    'Front-end > Typesrcipt' 카테고리의 다른 글

    Typescript - Narrowing & Assertion  (0) 2023.04.12
    Typescript - function parameter, return  (0) 2023.04.12
    Typescript - Primitive Types  (0) 2023.04.12
    Typescript - 변수 선언  (0) 2023.04.11
    Typescript - 설치 및 셋팅  (0) 2023.04.11
Designed by Tistory.