Не учитывается разрядность числа. Для нуля результат будет - [1,0].
Я бы сделал так (64 - разрядность числа):
var number = 1;
var count = [ 0, 0 ];
var i = 0;
while(i++ < 64){
count[number & 1]++;
number >>= 1;
}
count.forEach((n, i) => console.log(`${i}: ${n}`));