# Logical XOR in JavaScript

*March 23, 2007*

Of course there wouldn’t be an XOR function in JavaScript when I needed one. So I googled around and found an implementation at How To Create. But it only took two arguments. So I rolled my own supporting a variable number of arguments. In my personal stuff, I’ve put it into a Math library under the YAHOO namespace, and you can decide if you want to do that on your own.

```
function xor() {
var b = false;
for( var j = 0; j < arguments.length; j++ ) {
if( arguments[ j ] && !b ) b = true;
else if( arguments[ j ] && b ) return false;
}
return b;
};
```

Usage:

```
xor( false, true ); // true
xor( true, true ); // false
xor( false, false, true, true, true, false, true, false ); // false
xor( false, false, false, true, false, false, false, false ); // true
```

## 2 Comments

## Nagy Gergely Disqus

06 Nov 2017## zachleat Disqus

13 Nov 2017