Wednesday, 15 June 2016

javascript - check to see if exactly two out of three booleans are true?



I need to test to see if exactly two out of three booleans are true.



Something like this:



if((a && b && !c) || (a && !b && c) || (!a && b && c)){
//success
}


Is this the most direct way to go about this? Does anyone know of a shortcut / shorthand?


Answer



To check if exactly two are equal to true:



[a, b, c].filter(Boolean).length === 2;


References:




No comments:

Post a Comment

c++ - Does curly brackets matter for empty constructor?

Those brackets declare an empty, inline constructor. In that case, with them, the constructor does exist, it merely does nothing more than t...