never

Seulyi Yoo·2022년 7월 13일
0

TypeScript

목록 보기
17/42
post-thumbnail
  • never 타입은 모든 타입의 subtype 이며, 모든 타입에 할당 할 수 있음
  • never 에는 그 어떤 것도 할당할 수 없음
  • any 도 never 에 할당할 수 없음
  • 잘못된 타입을 넣는 실수를 막고자 할 때 사용함.
function error(message: string): never {
  throw new Error(message);
}

function fail() {
  return error('failed');
}

function infiniteLoop(): never {
  while(true) {}
}
function error(message: string): never {
  throw new Error(message);
}

function fail() {
  return error('failed');
}

function infiniteLoop(): never {
  while(true) {}
}

declare const a: string | number;

if(typeof a !== 'string') {
  a; // const a: number;
}

type Indexable<T> = T extends string ? T & { [index: string]: any } : never;

const b: Indexable<{}> = ''; // const b: never;
profile
성장하는 개발자 유슬이 입니다!

0개의 댓글