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_INFINITY は typeof 演算子では "number" と判定される点に注意してください。また、無限大かどうかを判定するには、比較演算のほかに Number.isFinite() メソッドを使う方法もあります。
-
JavaScriptで入力値が数字か文字かを判定する方法【isNaN()関数の使い方】
入力された値が数字か文字(数値以外)かを判定するには、JavaScriptのisNaN()関数を使用します。この関数は、値がNaN(Not a Number:非数)である場合にtrueを返します。この特性を利用することで、ユーザーが入力した値が数値かどうかを簡単にチェックできます。 isNaN()関数とは isNaN()は「is Not a Number」の略称です。引数として渡された値が数値として解釈できない場合にtrueを、数値として解釈できる場合はfalseを返します。これにより、「入力内容が数字かどうか」をシンプルに判定できるのが特徴です。 サンプルコード 以下のコードでは、フォームの
-
JavaScriptで「関数式は常に定数値」とは?const再代入時のエラー原因と対処法
JavaScriptでは、constキーワードを使って宣言された変数は定数として扱われます。一度値を代入した後、同じ変数に別の値を再代入しようとすると、プログラムの実行時にエラーが発生します。これは関数式(アロー関数など)をconstに代入した場合も同様です。 例えば、以下のようにアロー関数をconstで宣言したとします。 const result = (first, second) => first * second; この状態で、resultに対して別の関数を再代入してみると、エラーが発生することを確認できます。 コード例 以下のコードを見てみましょう。 const re