ビット演算子 (Bitwise operators)

ビット論理演算子 (Bitwise logical operators)

演算子 使用例
AND (Bitwise AND) a & b
OR (Bitwise OR) a | b
XOR (Bitwise XOR) a ^ b
NOT (Bitwise NOT)   ~ b
(0b10 & 0b11).toString(2) // "10"
(0b10 | 0b11).toString(2) // "11"
(0b10 ^ 0b11).toString(2) // "1"
(     ~ 0b11).toString(2) // "-100"

接頭辞「0b」による2進数の表記をサポートしないブラウザでは、他の表記法で書き換える必要があります。Browser compatibility - Lexical grammar - JavaScript | MDN

それぞれの演算子による演算結果を確認できます。値は左端の「&」の欄に、2進数で入力してください。

値1  
演算子 & | ^ ~
値2
演算結果

ビットシフト演算子 (Bitwise shift operators)

演算子 使用例
左シフト (Left shift) a << b
右シフト (Sign-propagating right shift) a >> b
右シフト (Zero-fill right shift) a >>> b
(0b1011 <<  2).toString(2) // "101100"
(0b1011 >>  2).toString(2) // "10"
(0b1011 >>> 2).toString(2) // "10"
(-1 >>  2).toString(2) // "-1"
(-1 >>> 2).toString(2) // "111111111111111111111111111111"
JavaScriptのドキュメントから検索