타입스크립트 union type, any, unknown 타입 정리

버건디·2023년 1월 2일
0

타입스크립트

목록 보기
3/12
post-thumbnail

- Union Type

유니온타입이란 타입을 한가지가 아닌 여러개를 지정할때 사용된다.

let 회원: number | string | boolean = 123;
let 회원들: (number | string)[] = [1, "2", 3];

// number 타입인 값도 지정가능하고, string 값이 들어오는 배열도 지정 가능하다는 뜻이어서 ( ) 로 감싸주어야한다.
let 회원들: number | string[] = [1, "2", 3];

위처럼 배열안에 한가지 타입이 아니라 여러개의 타입이 쓰일경우, ( ) 를 통해 감싸준다.

- Any Type

any 타입은 어떠한 타입도 지정할수가 있다.

let 이름: any = 123;
이름 = [];
이름 = "BRGNDY";
이름 = true;

타입을 재선언을 해주어도 오류가 나지않고, 심지어 다른 타입들끼리 연산을 해도 오류가 나지 않는다.

타입이 변할수도 있는 가변적인 변수를 사용할때 쓰면 용이하겠지만, any 타입을 사용한다면 타입스크립트를 사용하는 의미가 퇴색된다.

- Unknown Type

unknown 타입은 any 타입과 비슷하게 어떠한 값도 올수있지만 어떠한 값도 올수 있기때문에 함부로 연산할수 없다.

let 이름: unknown = 123;
이름 = 'BRGNDY';
이름 = false;
이름 = {};

하지만 모든 연산이 다 허용되던 any 타입과는 다르게 unknown타입은 최소한의 안정성을 보장해서 오류를 띄운다.

profile
https://brgndy.me/ 로 옮기는 중입니다 :)

0개의 댓글