【发布时间】:2021-11-02 14:25:10
【问题描述】:
我知道双重否定前缀,并且我知道 TypeScript 的单后缀(非空断言)。
但是这个双后缀感叹号是什么?
/.*verification code is (\d{6}).*/.exec(email.body!!)!![1]
取自here。
【问题讨论】:
-
@user3428422 我认为这不适合后缀表示法。
标签: typescript
我知道双重否定前缀,并且我知道 TypeScript 的单后缀(非空断言)。
但是这个双后缀感叹号是什么?
/.*verification code is (\d{6}).*/.exec(email.body!!)!![1]
取自here。
【问题讨论】:
标签: typescript
它类似于 !! 在 JavaScript 中的工作方式,只是没有意义。
! 断言前面的表达式是非空的。
!可以用在表达式之后。
expression! 断言 expression 是非空值。
expression!! 断言 expression! 是非空值。
一个! 就足够了,但在语法上并没有禁止更多。以下也是有效的:
/.*verification code is (\d{6}).*/.exec(email.body!!!!!!)!!!![1]
【讨论】: