ホームページ > 記事 > ウェブフロントエンド > JavaScript の Double Bitwise NOT 演算子 (~~) が負の数に対して異なる動作をするのはなぜですか?
JavaScript における Double Bitwise NOT 演算子 (~~) の目的は何ですか?
JavaScript では、「二重チルダ」(~ ~) 演算子は、二重のビットごとの NOT 演算子です。これは、正の数値に対する Math.floor() メソッドの高速な代替として機能します。
正の数値に適用すると、~~ はビット単位の NOT 演算を 2 回実行します。これにより、Math.floor() と同様に、数値の小数部分が効果的に切り捨てられます。
たとえば、~~5.8 は、Math.floor(5.8) と同様に 5 を返します。
ただし、~~ は負の数では異なる動作をします。切り捨てるのではなく、小数部分を切り捨て、基本的に整数をゼロに戻します。
たとえば、~~-5.8 は -5 を返しますが、- に切り捨てられる Math.floor(-5.8) とは異なります。 6.
~~ は負の数値での使用を意図したものではなく、負の入力に対する動作は JavaScript 環境によって異なる可能性があることに注意することが重要です。したがって、負の値を扱う場合は、Math.floor() またはその他の適切な丸めメソッドを明示的に使用することをお勧めします。
以上がJavaScript の Double Bitwise NOT 演算子 (~~) が負の数に対して異なる動作をするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。