JavaScript で「二重チルダ」 (~~) 演算子は何をしますか?

Patricia Arquette
リリース: 2024-11-03 05:41:02
オリジナル
873 人が閲覧しました

What Does the

JavaScript の謎の「二重チルダ」演算子 (~~) を解読する

一部の JavaScript コードでは、謎の「二重チルダ」に遭遇する可能性があります。チルダ" (~~) 演算子。このユニークな演算子には、すぐには明らかではない特定の機能があります。その目的と動作を詳しく見てみましょう。

~~ 演算子とは何ですか?

~~ 演算子は、JavaScript の二重ビット単位 NOT 演算子を表します。これは主に、正の数を扱うときに Math.floor() 関数の高速な代替手段として使用されます。

その機能

正の数に適用すると、 ~~ 演算子は基本的に、次の手順を実行することで数値の小数部分を「切り取り」ます:

  1. ビットごとの NOT 演算子 (~) を使用して数値を否定します。
  2. それは否定しますビットごとの NOT 演算子 (~) を再度使用して結果を取得します。

この二重否定により、効果的に数値が整数部分に切り捨てられます。たとえば、~~5.67 は 5 になります。

Math.floor()

との相違点

一方、

演算子は Math の高速近似として機能します。 Floor() では、負の数の場合の動作が異なります。負の数値で使用される場合、 は Math.floor() のように丸めや切り捨てを実行しません。代わりに、数値の小数部分が削除されるだけです。

使用例

<code class="javascript">const x = 12.34;
const y = ~~x; // y will be 12</code>
ログイン後にコピー

~~ の使用法を説明するために、次のコード スニペットを考えてみましょう:

この例では、~~ を使用して数値 x の小数部分が切り捨てられ、整数値 12 が得られます。

Takeaway

JavaScript の ~~ 「二重チルダ」演算子は、正の数値を切り捨てるための迅速かつ便利な方法を提供します。これは Math.floor() の高速な代替手段を提供しますが、負の数での動作は多少異なるため、使用する場合はこの点を考慮する必要があります。

以上がJavaScript で「二重チルダ」 (~~) 演算子は何をしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート