function countBinaryDigits(number) {
const count = [ 0, 0 ];
do {
count[number & 1]++;
} while (number >>= 1);
return count;
}
// или
const countBinaryDigits = number => Array
.from(number.toString(2))
.reduce((acc, n) => (acc[n]++, acc), [ 0, 0 ]);
const numbers = [ 0, 1, 15, 0b1010010111010 ];
console.table(numbers.map(function(num) {
return [ num ]
.concat(countBinaryDigits(num))
.reduce((acc, n, i) => (acc[this[i]] = n, acc), {});
}, [ 'число', 'нули', 'единицы' ]));