📜  Nullish Coalescing - TypeScript (1)

📅  最后修改于: 2023-12-03 15:18:02.491000             🧑  作者: Mango

Nullish Coalescing - TypeScript

在 TypeScript 中, Nullish Coalescing 是一个新的操作符。这个操作符可以用来处理 null 或 undefined 的情况。

在过去,开发者们通常使用短路或者 ternary 运算符来处理 null 或 undefined,例如:

const message = response.message || "default message";

但这样做会有问题,因为如果 response.message 的值在逻辑上为 falsy 值(例如为空字符串、0falsenullundefined),那么上面的代码都会默认为 default message,这样程序可能因为出现错误而运行不正常。

使用 Nullish Coalescing,我们可以避免这些问题。Nullish Coalescing 使用 ?? 运算符来检测左侧表达式是否为 nullundefined,并在左侧表达式为以上两者之一的情况下返回右侧表达式。

例如:

const message = response.message ?? "default message";

这样就可以避免 response.message 是 falsy 值的情况下出现异常。

Nullish Coalescing 还可以用于显式地表示一个变量为 null 或 undefined,例如:

const name = firstName ?? lastName ?? "Unknown";

以上代码表示如果 firstNamelastName 均不为 nullundefined,则返回 firstName,否则返回 lastName,如果都为 nullundefined,则返回 "Unknown"。

这样就可以避免出现某些不必要的预算问题。

总之,Nullish Coalescing 可以有效地帮助开发者处理 null 或 undefined 的情况,并避免潜在的错误出现,这是一个非常实用的功能。