我有一个存储false或true的变量,但我需要分别为0或1。我该怎么做呢?


当前回答

一元的+运算符会处理这些:

var test = true;
// +test === 1
test = false;
// +test === 0

您自然希望在存储它之前在服务器上检查它,因此在服务器上执行此操作可能是一个更明智的地方。

其他回答

在我的上下文中,React Native,我从布尔获取不透明度值,最简单的方法:使用一元+运算符。

+ true; // 1
+ false; // 0

这将布尔值转换为数字;

style={ opacity: +!isFirstStep() }

依我看,最好的解决办法是:

fooBar | 0

这在asm.js中用于强制整型。

使用一元+运算符,将其操作数转换为数字。

+ true; // 1
+ false; // 0

当然,请注意,您仍然应该在服务器端清除数据,因为用户可以将任何数据发送到您的服务器,而不管客户端代码说了什么。

try

val*1

让t = true; 让f = false; console.log (t * 1); console.log (f * 1)

let integerVariable = booleanVariable * 1;