zl程序教程

您现在的位置是:首页 >  前端

当前栏目

TypeScript的非空断言操作符(感叹号)

typescript 操作符 断言 非空 感叹号
2023-09-14 09:02:58 时间

x! 将从 x 值域中排除 null 和 undefined.

看个例子:

myFunc = (maybeString: string | undefined | null) => {
  const onlyString: string = maybeString; // Error
  const ignoreUndefinedAndNull: string = maybeString!; // Ok
  }

  myFunc2 = (onlyString: string) => {
    const a: string = onlyString;
  }
  constructor() {
     this.myFunc('jerry');
     this.myFunc(undefined);

     this.myFunc2(undefined);
     this.myFunc2(null);
  }

没有编译错误,也能正常运行:

我的Angular版本:

测试出的结果和这篇文章细数 TS 中那些奇怪的符号里提到的不一致:

更多Jerry的原创文章,尽在:“汪子熙”: