Parsing Booleans: What's best for performance?
Most know that there are three ways of parsing booleans out of truthy / falsy values:
var bool = !!value; // double bang ============================ var bool = value ? true : false; // ternary ============================ var bool = new Boolean(value); // Boolean constructor
But which one of these is fastest? Well, according to this jsPerf, the ternary and double bang operational ways are almost exactly the same performance, and both are faster than the constructor method. So, you get to both gain performance and type less by using the double bang method above!
We mostly use
!!var, but filtering an array so you can get rid of falsy values with
arr = arr.filter(Boolean)is neat as well :)