JavaScript 中檢查 2 的冪
我們需要編寫一個函式,isPowerOfTwo(),它接收一個正數,並根據該數是否是某個 2 的冪,返回一個布林值。
例如 −
console.log(isPowerOfTwo(3)); //false console.log(isPowerOfTwo(32)); //true console.log(isPowerOfTwo(2048)); //true console.log(isPowerOfTwo(256)); //true console.log(isPowerOfTwo(22)); //false
讓我們編寫此函式的程式碼,它將是一個非常簡單的遞迴函式,只要數字保持可被 2 整除就不斷遞迴,如果在此過程中該數字一直減小到 1,它就是 2 的冪,否則不是。程式碼如下 −
示例
const isPowerOfTwo = num => {
if(num === 1){
return true;
};
if(num % 2 !== 0){
return false;
}
return isPowerOfTwo(num / 2);
}
console.log(isPowerOfTwo(3));
console.log(isPowerOfTwo(32));
console.log(isPowerOfTwo(2048));
console.log(isPowerOfTwo(256));
console.log(isPowerOfTwo(22));輸出
控制檯中的輸出如下 −
false true true true false
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP