整型比特是否在使用 JavaScript 交替?


问题

要求我们编写一个 JavaScript 函数,该函数接受一个整数 num 作为第一个且唯一的参数。

我们的函数应该检查 num 的二进制表示形式是否有交替位 - 即,相邻的两个位总是具有不同的值。

例如,如果输入函数时为

输入

const num = 5;

输出

const output = true;

输出说明

因为 5 的二进制形式是 101,具有交替位。

示例

以下是代码 -

 在线演示

const num = 5;
const isAlternating = (num = 1) => {
   const binary = num.toString(2);
   let curr = binary[0];
   for(let i = 1; i < binary.length; i++){
      const el = binary[i];
      if(curr !== el){
         curr = el;
         continue;
      };
      return false;
   };
   return true;
};
console.log(isAlternating(num));

输出

true

更新于: 24-4-2021

144 次浏览

开启你的 职业生涯

完成课程获得认证

开始
广告