Convert boolean result into number/integer
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.
Javascript has a ternary operator you could use:
var i = result ? 1 : 0;
Imho the best solution is:
fooBar | 0
This is used in asm.js to force integer type.
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.
The typed way to do this would be:
Number(true) // 1
Number(false) // 0