我有一个条件,其中0
或以上为有效,而负数为无效。当我用JavaScript / TypeScript相应地编写代码时,令我惊讶的是,它没有按我预期的方式工作。
代码如下。
if (-1) {
console.log("truthy")
} else {
console.log("falsy")
}
这将在控制台中打印以下内容。
真实
应该是falsy
,对吧?
任何帮助,可以帮助我了解这种行为。我想念什么?
谢谢
答案 0 :(得分:7)
JavaScript中有六个伪造的值:
false
0
NaN
undefined
''
null
所有其他值都是真实的。
答案 1 :(得分:0)
在Javascript中,始终将0评估为falsy,而任何非零数字均为true。
答案 2 :(得分:0)
在javascript BowlingBall ballImperative =
pool.computeIfAbsent(number, BowlingBall::new);
中,数字评估为true,而零评估为false。这是一个不错的网页,深入介绍了javascript中许多不同值的布尔值:https://www.sitepoint.com/javascript-truthy-falsy/