void

function logMessage(): void {
  console.log("Hello, world!");
}

let result: void = undefined; // 可以显式赋值为 undefined

never

function throwError(message: string): never {
  throw new Error(message);
}

function infiniteLoop(): never {
  while (true) {
    // 无限循环
  }
}

let value: never; // 变量声明为 never 类型
value = throwError("Something went wrong"); // 可以赋值为一个抛出异常的函数

总结:

- `void` 表示没有返回值或没有具体值的类型。
- `never` 表示永远不会发生的类型,用于表示函数永远不会返回或代码不可达。