ホームページ >ウェブフロントエンド >jsチュートリアル >Javascriptのビットごとの否定演算子(~)_基礎知識

Javascriptのビットごとの否定演算子(~)_基礎知識

WBOY
WBOYオリジナル
2016-05-16 17:01:361921ブラウズ

コードをコピー コードは次のとおりです:

result = ~ [Number]

すべての単項演算子 (~ 演算子など) は、次の規則に従って式を評価します。

コードをコピー コードは次のとおりです:

1 未定義の式に適用される場合、またはnull 式を使用すると、ランタイム エラーが発生します。
2. オブジェクトを文字列に変換します。
3. 可能であれば、文字列を数値に変換します。 そうしないと、実行時エラーがスローされます。
4. ブール値は数値として扱われます (false の場合は 0、true の場合は 1)。

演算子は、結果の数値に適用されます。

~ 演算子は、式のバイナリ表現の値を調べ、ビット単位の NOT 演算を実行します。

式内のいずれかのビットが 1 の場合、結果内のそのビットは 0 になります。 式内のいずれかのビットが 0 の場合、結果ではそのビットが 1 になります。

次の例は、負の 10 進数の 2 進数表現を含むビット単位の NOT (~) 演算子の使用法を示しています。これに詳しくない場合は、「 負の 10 進数の 2 進数、8 進数への変換」を参照してください。 、および 16 進数 》。

コードをコピーします コードは次のとおりです:

var temp = ~5;
/*
5 バイナリ 101、32 ビットを埋めます
0000000000000000000000000000101
ビットごとに否定します
11111111111111111111111111111010
最初の 3 以降2 ビットは 1 で始まるため、これは負の数です。バイナリを負の値に変換します。数値、最初に
0000000000000000000000000000101
を反転し、次に 1
000000000000000000000000000000110
を 10 進数の 6 に変換し、符号を追加して負の数 -6
*/
アラート( temp);
// ポップアップ【-6】
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。