【JavaScript ECMAScript】Right shift (>>)演算子の使い方
Right shift (>>)演算子の使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
Right shift (>>)演算子は、数値のビット表現を右方向にシフトする処理を実行する演算子です。この演算子は、左側のオペランドである数値のビット列を、右側のオペランドで指定されたビット数だけ右に移動させます。右端からはみ出したビットは破棄されます。
Right shift (>>)演算子の重要な特徴は、符号を保持する右シフトであるという点です。これは、元の数値の符号(正または負)を維持するように、左端に新しいビットが挿入されることを意味します。具体的には、正の数の場合は左端に0が追加され、負の数の場合は左端に1が追加されます。これにより、シフト後の数値も元の数値と同じ符号を持ち続けます。
この演算子は、主に低レベルなビット操作、データのエンコードやデコード、あるいは特定のアルゴリズムの実装など、数値の内部表現を直接操作したい場面で利用されます。例えば、正の整数に対しては、2のべき乗で除算するのに似た効果が得られますが、負の数の場合は通常の算術的な除算とは異なる結果となるため、使用時には注意が必要です。例えば、10 >> 1 は 5 となりますが、 -10 >> 1 は -5 となります。
公式リファレンス: Right shift (>>)
構文(syntax)
110 >> 2
引数(parameters)
引数なし
引数はありません
戻り値(return)
Number
指定された数値のビット表現を右にシフトした結果を数値で返します。