"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > ## JavaScript에서 이중 물결표 연산자(~~)는 무엇을 합니까?

## JavaScript에서 이중 물결표 연산자(~~)는 무엇을 합니까?

2024년 11월 17일에 게시됨
검색:428

## What Does the Double Tilde Operator (~~) Do in JavaScript?

JavaScript의 이중 물결표 연산자(~~)

JavaScript에서 ~~ 연산자는 뒤에 있는 모든 것을 제거하는 유형 강제 연산자입니다. 숫자의 소수점. 이는 값의 비트를 반전시키는 비트 NOT 연산자인 ~ 연산자와 다릅니다.

작업

연산자는 먼저 해당 값을 변환하여 작동합니다. 부호 있는 32비트 정수에 대한 피연산자입니다. 즉, 피연산자가 부동 소수점 숫자이거나 문자열이더라도 내부적으로는 정수로 처리됩니다. 연산자는 다음을 효과적으로 수행합니다.

  • 피연산자가 음수이면 다음 정수(Math.ceil)로 반올림됩니다.
  • 피연산자가 양수이면 다음 정수로 내림됩니다. (Math.floor).

유용성

~~ 연산자는 Math.floor 또는 Math.ceil을 간단히 대체하는 것처럼 보이지만 일부 제한 사항:

  • 피연산자가 -(2^31) ~ 2^31 - 범위를 벗어나면 오버플로가 발생할 수 있습니다. 1.
  • 소수 부분을 무시하므로 정수가 아닌 피연산자에는 적합하지 않습니다.

따라서 일반적으로 x(단항 더하기) 또는 Number( x) 유형 강제의 경우 Math.floor 또는 Math.ceil 반올림.

숫자 -43.2를 고려합니다.

  • ~~(-43.2) = -43
  • Math.floor(-43.2) = -44

가능한 대로 보세요, ~~는 Math.floor가 내림되는 동안 0으로 반올림됩니다. 이 동작은 소수점을 사용하지 않고 숫자를 자르는 등의 특정 시나리오에서 유용할 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3