Tilde(틸드) '~'
tilde 연산자는 비트연산자로 NOT의 기능
2진수일 때 0과 1만 뒤바꾸면 됨
const a = 5; // 0000000000000101
console.log(~a); // 1111111111111010
// expected output: -6
const b = -3; // 1111111111111101
console.log(~b); // 0000000000000010
// expected output: 2
~~연산자,
double tilde
Math.floor()와 동등하게 쓰이는 연산자
let num = '2305.152';
console.log(Math.floor(num)); //2305
console.log(~~num); //2305
Math.floor()
와 비교한 ~~
의 장단점
장점
속도 측면에서 ~~
, Math.floor()
, parseInt
순으로 ~~
가 가장 빠른 퍼포먼스를 보여줌
단점
복잡한 코드 또는 협업하는 과정에서 가독성이 좋지 않음