はじめに
この記事では、TypeScript の never型の概要を記載します。
never型とは
never型は、値を持たないことを示す型です。
「値を持たない」の具体例としては、以下のような例が挙げられます。
必ずエラーが発生する関数
sample.ts
function throwError(message: string): never {
throw new Error(message);
}
終了しない関数
sample.ts
function infiniteLoop(): never {
while (true) {
// Infinite loop
}
}
作り得ない型
sample.ts
type NumberString = number & string;
never型への代入 / never型の代入
never型にはnever型以外の値を代入することはできません。
一方、never型はどんな型にも代入できます。