我有一个存储false
or的变量true
,但我分别需要0
or 1
。我怎样才能做到这一点?
将布尔结果转换为数字/整数
IT技术
javascript
numbers
integer
boolean
type-conversion
2021-02-23 11:23:44
6个回答
使用一元运算+
符,它将其操作数转换为数字。
+ true; // 1
+ false; // 0
请注意,当然,您仍然应该清理服务器端的数据,因为无论客户端代码怎么说,用户都可以向您的服务器发送任何数据。
Javascript 有一个可以使用的三元运算符:
var i = result ? 1 : 0;
恕我直言,最好的解决方案是:
fooBar | 0
这在 asm.js 中用于强制整数类型。
我更喜欢使用Number 函数。它接受一个对象并将其转换为数字。
例子:
var myFalseBool = false;
var myTrueBool = true;
var myFalseInt = Number(myFalseBool);
console.log(myFalseInt === 0);
var myTrueInt = Number(myTrueBool);
console.log(myTrueInt === 1);
您可以在jsFiddle 中对其进行测试。
键入的方法是:
Number(true) // 1
Number(false) // 0