How to check if an integer contains an even or odd number of bits set in JavaScript

2 Answers

0 votes
const num = 42; // 00101010

// Convert to binary string and count '1's
const bitCount = num.toString(2).split('').filter(ch => ch === '1').length;
const result = bitCount % 2;

console.log("0 = even number of bits set");
console.log("1 = odd number of bits set");
console.log("result: " + result);

 
    
/*
run:
     
0 = even number of bits set
1 = odd number of bits set
result: 1
      
*/

 



answered Jul 27, 2025 by avibootz
0 votes
const num = 42; // 00101010

const result = num.toString(2)
                  .split('')
                  .reduce((parity, bit) => parity ^ bit, 0)

console.log("0 = even number of bits set");
console.log("1 = odd number of bits set");
console.log("result: " + result);

 
    
/*
run:
     
0 = even number of bits set
1 = odd number of bits set
result: 1
      
*/

 



answered Jul 27, 2025 by avibootz
...