void 类型表示一个没有返回值的值。它通常用于表示函数没有返回值。
function printMessage(): void {
console.log("Hello World!");
}
never 类型表示一个永远不会发生的值。它通常用于表示函数抛出错误或进入无限循环。
function infiniteLoop(): never {
while (true) {
// 无限循环
}
}
function throwError(): never {
throw new Error("An error occurred!");
}
// void 类型
let x: void; // 没有任何值
x = undefined; // 赋值为 undefined 是允许的
// never 类型
let y: never; // 没有任何值
y = throwError(); // 赋值为抛出异常的函数是允许的
y = infiniteLoop(); // 赋值为进入无限循环的函数也是允许的