angular - 如果条件返回假,如果一个数字存在,但为 0
问题描述
我有一个带有可选字段的类startDateHour
:
export class Test {
startDateHour?: number;
// more fields, constructor etc.
}
我想做点什么,如果startDateHour
存在的话:
if (test.startDateHour) {
//do something
}
问题是,当为 0 时,此检查无法按预期工作。startDateHour
如果它的 0 仍然存在,我想执行代码,但if (startDateHour)
在这种情况下返回 false。
当然我可以做类似的事情:
if (test.startDateHour || test.startDateHour === 0) {
// do something
}
但是有没有更好的方法,比如一个同时做上述事情的检查?
解决方案
0 是假的。但是最新的 typescript 版本提供了另一个称为 Nullish Coalescing 的运算符。如果您可能想要使用它,则取决于您想要在其中执行的操作。
在这里阅读它,例如:https ://dev.to/obinnaogbonnajoseph/optional-chaining-and-nullish-coalescing-typescript-3-7-5899
推荐阅读
- java - Java从字符串中删除公钥页眉和页脚
- java - 是否有检查输出的多个变量的操作?
- php - 如何在 HTML 隐藏字段中使用 GET 变量作为值?
- php - 从 laravel 刀片上的循环访问数据
- python - 与熊猫数据框列比较后,在 .csv 文件中添加行
- c# - 禁用在 HttpWebRequests 之间重用 ServicePoint
- lua - 返回多个值的函数 Lua
- terraform - 有没有办法强制 AKS 将 kubelet 配置为使用 HTTPS 作为其指标端点?
- python - Python numpy 数组数学显示奇怪的结果
- sql-server - 使用 VSCode PowerShell 连接到 Docker SQL Server SMO PS Provider?