测试非无效性的惯用方法



JavaScript现在提供???.来执行诸如查找第一个非null表达式或在不为null的情况下取消引用对象之类的操作。

[添加:"nullish"表示"nullundefined",类似于nullish合并运算符]。

有没有一种好的惯用方法来简单地测试非无效性?例如,如果我只想在值为非零的情况下调用onChange()处理程序。即:

someVal && onChange(someVal)

显然,这是不正确的,因为它将失败的虚假但非无效的值(特别是0''(。

惯用方法是if语句与null:进行比较

if (someVal != null) onChange(someVal)
if (someVal != null) {
onChange(someVal)
}

对此没有运算符。有些人表示希望扩展管道运营商的提案,让您编写类似someVal ?> onChange;的内容,但我不知道这个想法有任何实现。

最新更新