编程语言
首页 > 编程语言> > 位屏蔽(javascript):如何检查所有标志

位屏蔽(javascript):如何检查所有标志

作者:互联网

如果我有数字’00001000’和掩码’00101000′,我如何通过二进制操作检查数字中的两个位是否都已设置?数字&如果至少有一位匹配,则mask返回true,但我需要检查所有匹配项.
如何?

解决方法:

只是比较面具:

if (number & mask === mask) {
  // all bits are set!
}

&结果的唯一方法当数字设置了所有位时,操作将与掩码的值完全相同. (测试编号可能设置了更多位;如果要检查它是否设置了相同的位并且未设置,那么这是一个简单的相等测试.)

标签:javascript,bit-manipulation,bitwise-operators,bitmask,masking
来源: https://codeday.me/bug/20190611/1221454.html