在javascript中哪里可以使用nullish运算符


function test(val) {
const hasError = val ?? true;
if (hasError) {
//error handling...
} else {
//do something...
}
}
test(null) //error handling...
test(undefined) //error handling...
test('text') //error handling...
test(true) //error handling...

像这种情况下,我想过滤"null"one_answers"undefined">

但它的每一个真理的价值。

所以我只有一个选择。。。

const hasError = (val === undefined || val === null);

在这种情况下,有什么方法可以使用null运算符吗?

零位运算符一般在什么时候使用?

谢谢

如果您确定

const hasError = (val === undefined || val === null);

捕捉到你想要的逻辑,那么问题是

const hasError = val ?? true;

如果您随后要在if表达式中使用该标志,则会给出与之相反的。你真的想跟随

if (hasError !== true)

这(对我来说(真的很困惑。相反,你可以想象??操作符会给你相反的结果:

const noError = val ?? true;
if (!noError) 

这更有意义。就我个人而言,我会使用

const hasError = val == null;

或者直接在CCD_ 3中进行测试。

相关内容

  • 没有找到相关文章

最新更新