TypeScript 双问号运算符
在TypeScript语言中,出现问号的情况有两种:用?:
来表示可选属性;用??
判断变量的空值。
第一种情况在《TypeScript 接口属性》已经介绍过了,不再赘述,本文主要说一下双问号运算符,希望对大家有所帮助。
const country = myCountry ?? 'CHINA';
当 myCountry
为 null
或 undefined
时,country
被赋值为:CHINA
,否则被赋值为 myCountry
变量值。
需要注意的是:双问号运算符具有短路性质,也就是说:
a() ?? b()
一旦 a()
函数返回值不为 null
或 undefined
,则不会再执行 b()
函数。