Typescript中的感叹号,但不是非可空类型断言

时间:2018-02-05 09:56:59

标签: angular typescript

在Angular 5.2打字稿源中找到了一些有趣的代码:

  1. 数组索引变量here

    前面的感叹号

    signature ![i]

  2. 函数调用括号here

    前面的感叹号

    this._methods.get(message.method) !(message);

  3. 在Typescript playground中尝试了这种语法 - 没有错误:here

    但仍无法找到/理解它是什么意思。请帮助。

1 个答案:

答案 0 :(得分:3)

这是非空断言运算符。这是一种告诉编译器的方法“这个表达式在这里不能为null或未定义,因此不要抱怨它为null或未定义的可能性。”有时,类型检查器无法自行做出决定。