이번에는 자바스크립트의 연산자들 중 마지막 챕터인 비트 연산자
에 대해 알아보도록 한다.
비트 연산자는 논리 연산자와 비슷하지만, 비트 단위로 논리 연산을 수행한다.
&
: 대응되는 비트가 모두 1이면 1을 반환함. (비트 AND 연산)
|
: 대응되는 비트 중에서 하나라도 1이면 1을 반환함. (비트 OR 연산)
^
: 대응되는 비트가 서로 다르면 1을 반환함. (비트 XOR 연산)
~
: 비트를 1이면 0으로, 0이면 1로 반전시킴. (비트 NOT 연산)
<<
: 지정한 수만큼 비트를 전부 왼쪽으로 이동시킴. (left shift 연산)
>>
: 부호를 유지하면서 지정한 수만큼 비트를 전부 오른쪽으로 이동시킴. (right shift 연산)
>>>
: 지정한 수만큼 비트를 전부 오른쪽으로 이동시키며, 새로운 비트는 전부 0이 됨.
예시
var x = 15, y = 8, z = 15;
console.log((x << 1) + "<br>"); // 곱하기 2와 같으므로 15 * 2 = 30
console.log((y >> 1) + "<br>"); // 나누기 2와 같으므로 8 / 2 = 4
console.log(~z); // 1의 보수와 같으므로 -(15+1) = -16
출처 : TCPSCHOOL.com