如何检查变量是否为假但 Javascript 中传递的是 0

问题描述 投票:0回答:2

有没有一种优雅的方法来检查变量是否不是假的,但在 0 的情况下它会通过。这种验证方式的问题

if(var !== undefined && var !== null)
是它很长并且没有涵盖像
undecalred
NaN
这样的所有情况。我还使用打字稿并将其声明为可选数字。

javascript typescript
2个回答
4
投票

您可以完全按照第一句话的要求进行操作:

if (!x && x !== 0)

字面意思是“如果 x 为假且 x 不为 0”。

此外,

==
!=
比较运算符明确认为
null
undefined
相等,所以

if (x != null)

对于

true
null
都是
undefined
。 (那是
!=
,不是
!==
。)


0
投票

function Check(input) {
   if (!input && input!==0){
    return "falsy";   
   }
   else if (input === 0){
    return "zero";
   
   }
   
}
console.log(Check(0));
console.log(Check(false))

© www.soinside.com 2019 - 2024. All rights reserved.