检查小数是否在 JavaScript 中共享至少两个常见的 1 位
问题
我们需要编写一个接受两个数字的JavaScript函数。如果数字在相同索引处的二进制表示中两次为1,我们的函数应该返回true,否则返回false。
示例
以下是代码-
const num1 = 10; const num2 = 15; const checkBits = (num1 = 1, num2 = 1) => { let c = num1.toString(2).split(''); let d = num2.toString(2).split(''); if(c.length > d.length){ c = c.slice(c.length - d.length); }else{ d = d.slice(d.length - c.length); }; let count = 0; for(let i = 0; i < d.length; i++){ if(c[i] === "1" && d[i] === "1"){ count++; }; }; return count > 1; }; console.log(checkBits(num1, num2));输出结果
以下是控制台输出-
true