pis*_*hio 4 javascript bit-manipulation bitmask bitwise-operators masking
如果我有数字'00001000'和掩码'00101000',我如何通过二进制操作检查数字中的两个位是否都已设置?number & mask如果至少有一位匹配则返回true,但我需要检查所有匹配项.如何?
只是比较面具:
if (number & mask === mask) {
// all bits are set!
}
Run Code Online (Sandbox Code Playgroud)
&操作结果与掩码值完全相同的唯一方法是当数字设置了所有位时.(测试编号可能设置了更多位;如果要检查它是否设置了相同的位并且未设置,那么这是一个简单的相等测试.)
| 归档时间: |
|
| 查看次数: |
1487 次 |
| 最近记录: |