美文网首页
TypeScript基础类型

TypeScript基础类型

作者: 小web | 来源:发表于2019-04-16 10:43 被阅读0次


    never 类型

    never 是其它类型(包括 null 和 undefined)的子类型,代表从不会出现的值。这意味着声明为 never 类型的变量只能被 never 类型所赋值,在函数中它通常表现为抛出异常或无法执行到终止点(例如无线循环),示例代码如下:

    let x: never;

    let y: number;

    // 运行错误,数字类型不能转为 never 类型

    x = 123;

    // 运行正确,never 类型可以赋值给 never类型

    x = (()=>{ throw new Error('exception')})();

    // 运行正确,never 类型可以赋值给 数字类型

    y = (()=>{ throw new Error('exception')})();

    // 返回值为 never 的函数可以是抛出异常的情况

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

    // 返回值为 never 的函数可以是无法被执行到的终止点的情况

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


    如果一个类型可能出现 null 或 undefined, 可以用 | 来支持多种类型

    相关文章

      网友评论

          本文标题:TypeScript基础类型

          本文链接:https://www.haomeiwen.com/subject/nkmvwqtx.html