Bitwise operators are used to perform binary logic with the bit patterns in integers. JavaScript supports several bitwise operators, including:
&(Bitwise AND)|(Bitwise OR)^(Bitwise XOR)~(Bitwise NOT)<<(Left shift)>>(Sign-propagating right shift)>>>(Zero-fill right shift)
How to Use Bitwise Operators
Here’s a brief explanation of how each operator works:
Bitwise AND (&)
The & operator performs a bitwise AND operation.
let x = 5; // binary: 0101
let y = 3; // binary: 0011
console.log(x & y); // 1 (binary: 0001)
Bitwise OR (|)
The | operator performs a bitwise OR operation.
let x = 5; // binary: 0101
let y = 3; // binary: 0011
console.log(x | y); // 7 (binary: 0111)
Bitwise XOR (^)
The ^ operator performs a bitwise XOR operation.
let x = 5; // binary: 0101
let y = 3; // binary: 0011
console.log(x ^ y); // 6 (binary: 0110)
Bitwise NOT (~)
The ~ operator performs a bitwise NOT operation.
let x = 5; // binary: 0101
console.log(~x); // -6 (binary: 1010)
Left Shift (<<)
The << operator shifts the bits of the number to the left and fills the right side with zeros.
let x = 5; // binary: 0101
console.log(x << 1); // 10 (binary: 1010)
Sign-propagating Right Shift (>>)
The >> operator shifts the bits of the number to the right. The left side is filled with the sign bit so that the sign of the number is preserved.
let x = 5; // binary: 0101
console.log(x >> 1); // 2 (binary: 0010)
Zero-fill Right Shift (>>>)
The >>> operator shifts the bits of the number to the right. The left side is filled with zeros.
let x = 5; // binary: 0101
console.log(x >>> 1); // 2 (binary: 0010)
Using JavaScript’s bitwise operators is fundamental to performing bit-level operations in your code. They are essential tools in every developer’s toolkit.
