TypeScript - 타입과 옵셔널 (3) Unknow, Void, Never

Younkyum J·2022년 7월 4일
0

TypeScript

목록 보기
3/8
post-thumbnail

Unknown

API 연결을 통해서 데이터를 받을 때, 해당 데이터의 타입값을 모르는 경우가 있다.
이런 상황을 대비하여 TS는 unknown값을 사용할 수 있다.

let a: unknown

다음과 같이 사용하고, 선언 방식은 다음과 같다.

선언법

const (변수 이름): unknown

Unknown의 사용

unknown을 사용할 때에는, 타입을 체크하는 과정이 무조건 필요하다.

let a: unknown

...

let c = a + 1 // Error: Object is of type 'unknown'.

if (typeof a === 'number') { // 만약 if문이 없을 경우 오류 발생
  
  let b = a + 1
  
} else if (typeof a === "string") {
  
  let b = a.toUpperCase();
  
}



Void

C와 C++에서 많이 보는 자료형 중 하나이다.
TS에서도 리턴하는 값이 없을 경우 출력값을 Void로 나타낸다.

funciton hello() { // function hello(): void
  console.log("hello")
}



Never

Never는 에러를 내보낼 때에 사용하는 타입값이다. 사용법은 다음과 같다.

function hello1(): never {
  throw new Error("error")
}

if문에서의 never type 생성

이런 경우 외에도 변수 타입이 두가지가 중첩 될 경우 never type이 생성되기도 한다.

function hello2(name: string|number) {
  if (typeof name === "string") {
    
    typeof name  // string
    
  } else if (typeof name === "number") {
    
    typeof name  // number
    
  } else {
    
    typeof name  // never
    
  }
}




*본 내용은 노마드코더 "Typescript로 블록체인 만들기"에서 습득한 내용을 바탕으로 재구성한 것 입니다.

profile
기획자입니다. 근데 이제 고양이와 애플덕후와 개발을 곁들인.

0개의 댓글