在 JavaScript 中反转十进制数的位并返回新的十进制数
问题
我们需要编写一个JavaScript函数,该函数接受一个十进制数,将其转换为二进制数,并将其1位反转为0和0为1,并返回由此形成的新二进制数的十进制等效值。
示例
以下是代码-
const num = 45657;
const reverseBitsAndConvert = (num = 1) => {
const binary = num.toString(2);
let newBinary = '';
for(let i = 0; i < binary.length; i++){
const bit = binary[i];
newBinary += bit === '1' ? '0' : 1;
};
const decimal = parseInt(newBinary, 2);
return decimal;
};
console.log(reverseBitsAndConvert(num));输出结果19878