【JavaScript ECMAScript】Bitwise NOT (~)演算子の使い方
Bitwise NOT (~)演算子の使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
Bitwise NOT (~)関数は、与えられた数値のすべてのビットを反転させる演算を実行する関数です。この単項演算子は、オペランドの各ビット(0を1へ、1を0へ)を切り替えることで、新しい数値を生成します。
JavaScriptでは、ビット単位の演算を行う前に、オペランドの数値を内部的に32ビットの符号付き整数に変換します。その後、その32ビット表現の各ビットに対してNOT演算が適用されます。例えば、数値5(2進数で「...00000101」)にBitwise NOT (~)を適用すると、すべてのビットが反転し、「...11111010」となります。この2進数表現は、JavaScriptの数値としては-6に相当します。
この演算の特徴として、~xの結果は-(x + 1)と等価になるという数学的な関係が成り立ちます。例えば、~5は-6となり、~0は-1、~-1は0となります。この性質は、特定の条件判定や簡単な数値変換に利用されることがあります。
Bitwise NOT (~)は主に整数値のビット操作に用いられます。浮動小数点数がオペランドとして与えられた場合でも演算は行われますが、その値はまず小数点以下が切り捨てられた32ビット整数に変換されてからビット反転が行われるため、予期しない結果になる可能性がある点に注意が必要です。
公式リファレンス: Bitwise NOT (~)
構文(syntax)
1~operand;
引数(parameters)
value
- value: number: ビット単位NOT演算を適用する数値
戻り値(return)
number
オペランドを32ビット整数として解釈し、各ビットを反転させた結果を数値として返します。