JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptのNumber.NEGATIVE_INFINITY定数とは?意味と使い方をわかりやすく解説

Number.NEGATIVE_INFINITY は、JavaScriptにおける特殊な数値で、Number.MIN_VALUE よりも小さい値(負の無限大)を表します。この値は文字列として「-Infinity」と表示され、数学における負の無限大とよく似た振る舞いをします。

Number.NEGATIVE_INFINITYの主な特徴

  • 任意の正の数を掛けると、結果は -Infinity のままになります。
  • 任意の負の数を掛けると、結果は Number.POSITIVE_INFINITY(正の無限大)になります。
  • -Infinity 同士の加算や、正の数との加算では -Infinity が維持されます。
  • 数値の演算結果が表現可能な最小値を下回った場合(アンダーフロー)、自動的にこの値が返されます。

使用例

次のコードを実行すると、Number.NEGATIVE_INFINITY 定数の動作を確認できます。Number.MAX_VALUE(JavaScriptで表現できる最大の数値)に -2 を掛けると、結果が負の無限大になる様子がわかります。

<html>
   <head>
      <script>
         <!--
            function showValue() {
               // 最大値に-2を掛け、負の無限大を作り出す
               var smallNumber = (-Number.MAX_VALUE) * 2;
               if (smallNumber == Number.NEGATIVE_INFINITY) {
                  alert("smallNumber の値 : " + smallNumber);
               }
            }
         //-->
      </script>
   </head>

   <body>
      <p>次のボタンをクリックして結果を確認してください:</p>
      <form>
         <input type="button" value="クリック" onclick="showValue();" />
      </form>
   </body>
</html>

ボタンをクリックすると、smallNumber の値が「-Infinity」であることを示すアラートが表示されます。これは、計算結果がJavaScriptで扱える数値の範囲を超えたためです。

注意点

Number.NEGATIVE_INFINITYtypeof 演算子では "number" と判定される点に注意してください。また、無限大かどうかを判定するには、比較演算のほかに Number.isFinite() メソッドを使う方法もあります。

  1. JavaScriptで入力値が数字か文字かを判定する方法【isNaN()関数の使い方】

    入力された値が数字か文字(数値以外)かを判定するには、JavaScriptのisNaN()関数を使用します。この関数は、値がNaN(Not a Number:非数)である場合にtrueを返します。この特性を利用することで、ユーザーが入力した値が数値かどうかを簡単にチェックできます。 isNaN()関数とは isNaN()は「is Not a Number」の略称です。引数として渡された値が数値として解釈できない場合にtrueを、数値として解釈できる場合はfalseを返します。これにより、「入力内容が数字かどうか」をシンプルに判定できるのが特徴です。 サンプルコード 以下のコードでは、フォームの

  2. JavaScriptで「関数式は常に定数値」とは?const再代入時のエラー原因と対処法

    JavaScriptでは、constキーワードを使って宣言された変数は定数として扱われます。一度値を代入した後、同じ変数に別の値を再代入しようとすると、プログラムの実行時にエラーが発生します。これは関数式(アロー関数など)をconstに代入した場合も同様です。 例えば、以下のようにアロー関数をconstで宣言したとします。 const result = (first, second) => first * second; この状態で、resultに対して別の関数を再代入してみると、エラーが発生することを確認できます。 コード例 以下のコードを見てみましょう。 const re