본문 바로가기
IT/자바스크립트

[javascript] Double NOT 연산자를 이용한 float을 int로 변환

by 불멸남생 2023. 11. 2.

NOT 연산자는~기호로 표시되는 연산자입니다. 
단항 연산자이므로 비트 NOT연산자를 사용하여 부동 숫자에서 소수 부분을 제거할 수 있습니다. 
이진 수준에서 NOT연산자는 이진 비트 값을 반전합니다 (1비트의 경우0,0비트 값의 경우 1 반환). 
즉, 숫자가10110으로 이진수로 표시되면 여기에 NOT를 적용하면 반전된 값 01001이 제공됩니다. 
그리고 다시 NOT기능을 적용하면 숫자의 원래 비트 (10110)가 반환됩니다. 
이렇게 NOT연산자를 두 번 적용하면 숫자 값이 반환되고 프로세스 중에 정수인 경우 숫자가 변경되지 않습니다. 
그러나 부동 값의 경우NOT연산자를 두 번 적용하면 부동 숫자의 정수 부분만 반환됩니다. 

 

예)
(~~(555.321));
(~~(555.423));
(~~(555.523));
(~~(-555.423));
(~~(-555.523));

 

반응형