Convert boolean result into number/integer

299,573

Solution 1

Javascript has a ternary operator you could use:

var i = result ? 1 : 0;

Solution 2

Use the unary + operator, which converts its operand into a number.

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

Note, of course, that you should still sanitise the data on the server side, because a user can send any data to your sever, no matter what the client-side code says.

Solution 3

Imho the best solution is:

fooBar | 0

This is used in asm.js to force integer type.

Solution 4

I prefer to use the Number function. It takes an object and converts it to a number.

Example:

var myFalseBool = false;
var myTrueBool = true;

var myFalseInt = Number(myFalseBool);
console.log(myFalseInt === 0);

var myTrueInt = Number(myTrueBool);
console.log(myTrueInt === 1);

You can test it in a jsFiddle.

Solution 5

The typed way to do this would be:

Number(true) // 1
Number(false) // 0
Share:
299,573
hd.
Author by

hd.

Updated on July 13, 2022

Comments

  • hd.
    hd. almost 2 years

    I have a variable that stores false or true, but I need 0 or 1 instead, respectively. How can I do this?