在 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
广告