1. 引用
      1. js void
      2. ts any、unknown、object、void、undefined、null 和 never 的类型兼容性
    2. 在 js 中,void 是一个运算符,void expression,用于返回 undefined。
    3. 在 ts 中,void 表示一个空类型,没有实际含义。
    4. 变量的类型为 void 类型,只能赋 undefinednull
    1. const x1: void = null
    2. const x2: void = undefined

    const x1: void = null 需要关闭“严格的 null 类型检查” strictNullChecks 后才被允许,否则会报错。由于 strictNullChecks 的默认值就是 false,所以默认情况ixa,void 类型的变量是可以被赋值为 null 值的。

    1. 在 ts 中,void 最常见的用法就是用来约束一个函数的返回值,表示该函数返回的是一个没有意义的内容。
    1. // 1. 可能没有 return 语句
    2. function f1(): void { }
    3. // 2. 可能 return 空
    4. function f2(): void { return }
    5. // 3. 可能 return 一个 void expression
    6. function f3(): void { return void(0) }
    7. // 4. 可能显示的 return 一个 undefined
    8. function f4(): void { return undefined }
    9. // 5. 可能显示的 return 一个 null(需要关闭 strictNullChecks)
    10. function f5(): void { return null }
    11. // 。。。

    如果一个函数的类型约束信息中,返回值被约束为 void 类型,那么你可以直接当做这个函数是没有返回值的即可。而无需关注它到底有没有 return,以及 return 的是啥。