在 JavaScript 中將數字舍入到某個最接近的冪


我們需要編寫一個 JavaScript 函式,該函式接收一個數字,並返回一個可以表示為 2 的某個接近輸入數的冪的數字。

例如:如果輸入數為 145。

那麼輸出應該為 128,因為對於某個 n 的整數值,145 是最接近 128 的此類數字,且可以表示為 2^n。

範例

以下將為此程式碼 −

const num = 145;
const nearestPowerOfTwo = num => {
   // dealing only with non negative numbers
   if(num < 0){
      num *= -1;
   }
   let base = 1;
   while(base < num){
      if(num - base < Math.floor(base / 2)){
         return base;
      };
      base *= 2;
   };
   return base;
};
console.log(nearestPowerOfTwo(num));

輸出

控制檯中輸出 −

128

更新日期:2020-10-17

120 次瀏覽

開啟你的 職業生涯

透過完成該課程接受認證

開始
廣告
© . All rights reserved.