Computer >> Máy Tính >  >> Lập trình >> Javascript

Đảo ngược các bit của số thập phân và trả về số thập phân mới trong JavaScript

Vấn đề

Chúng tôi được yêu cầu viết một hàm JavaScript nhận một số thập phân, chuyển nó thành nhị phân và đảo ngược bit 1 của nó thành 0 và 0 thành 1 và trả về giá trị thập phân tương đương của hệ nhị phân mới được hình thành do đó.

Ví dụ

Sau đây là mã -

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));

Đầu ra

19878