我有一个变量,存储的是 false
或 true
,但我需要分别得到 0
或 1
。如何做到这一点?
我有一个变量,存储的是 false
或 true
,但我需要分别得到 0
或 1
。如何做到这一点?
将建议的方法放在jsben.ch中: https://jsben.ch/d33N1。
它会在每次测试中给出不同的结果,但是每次测试中最好的方法都是位运算:0|bool
/ bool|0
/ 1&bool
/ 1&bool
/ ~~bool
。
我知道这样做有点晚了,但是你可以使用所谓的取模。在JS中,取模运算符用百分号(%)表示,目的是给出余数。因此,如果我们将数字除以2%
,它将寻找任何可被2整除的数字。如果不行,则余数为1,这总是成立的,所以你知道它是奇数。在这种情况下,你要做的是首先给出你想要的任意数字的integer
,在这种情况下,你需要一个0
或1
。
const integer = 0;
1
,它将打印false
,而0
将打印true
。const isEven = (integer % 2) === 0;
if (isEven) {
console.log('true');
} else {
console.log('false');
}
希望这能有所帮助。
bool === true ? 1 : 0
,因为它在 V8 引擎中是最快的。 - Qix - MONICA WAS MISTREATEDbool ? 1 : 0;
。该语句的意思是,如果布尔值为真,则返回1,否则返回0。 - Mouloud85