引言
在 JavaScript 中,我们常常需要判断一个变量是否为 null 或 undefined,然后再进行一些操作。这样的代码会让我们的代码变得臃肿,可读性也会变差。为了解决这个问题,ES11 引入了 Nullish Coalescing 运算符,它可以简化我们的代码,并且提高可读性。
什么是 Nullish Coalescing
Nullish Coalescing 运算符(??)是一个逻辑运算符,它可以通过判断一个变量是否为 null 或 undefined,来决定返回哪个值。如果变量的值是 null 或 undefined,那么它就会返回第二个值,否则就返回第一个值。
下面是一个简单的例子:
----- --- - ---- -- ---------- ----------------- -- -- ---------
在这个例子中,如果 foo 的值为 null,那么运算符就会返回 'default',否则就返回 foo 的值。
Nullish Coalescing 的应用和特点
应用
Nullish Coalescing 运算符可以用来简化我们的代码,特别是在需要判断一个变量是否为 null 或 undefined 的时候。下面是一个使用 Nullish Coalescing 运算符的例子:
----- --- - ---------- ----- --- - --- -- ---------- ----------------- -- -- ---------
在这个例子中,我们使用了 Nullish Coalescing 运算符来判断 foo 是否为 null 或 undefined,如果是的话,就返回 'default',否则返回 foo 的值。
特点
Nullish Coalescing 运算符有以下几个特点:
- 只会判断 null 和 undefined,不会判断其他 falsy 值(比如 0、'' 等)。
- 可以与短路运算符(&&)一起使用,来简化我们的代码。
下面是一个使用短路运算符和 Nullish Coalescing 运算符的例子:
----- --- - ---------- ----- --- - --- -- ------- -- ---------- ----------------- -- -- ---------
在这个例子中,我们先判断 foo 是否为 null 或 undefined,如果是的话,就返回 'default',否则再判断 foo 是否为 falsy 值,如果是的话,就返回 foo 的值,否则返回 'hello'。
总结
Nullish Coalescing 运算符是一个简单而强大的工具,可以帮助我们简化代码,并且提高可读性。它在 ES11 中引入,可以用于判断一个变量是否为 null 或 undefined,同时也可以与短路运算符一起使用,来实现更复杂的逻辑。学会使用 Nullish Coalescing 运算符,可以让我们的代码更加简洁、优雅、可读。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65d55982add4f0e0ffd15fe8