(IEのみで)ユーザーの選択に応じてInfinityを示す一連のJavascript計算があります。
WordのInfinity
の表示を停止して、たとえばshow 0.0
代わりに?
if (result == Number.POSITIVE_INFINITY || result == Number.NEGATIVE_INFINITY)
{
// ...
}
isFinite
の扱い方によっては、代わりに NaN
関数を使用できます。 isFinite
は、番号がPOSITIVE_INFINITY
、NEGATIVE_INFINITY
またはfalse
の場合、NaN
を返します。
if (isFinite(result))
{
// ...
}
単純な_n === n+1
_または_n === n/0
_が機能します:
_function isInfinite(n) {
return n === n/0;
}
_
ネイティブisFinite()
は入力を数値に強制することに注意してください。 isFinite([])
とisFinite(null)
は両方ともtrue
です。
_ES6
_では、 Number.isFinite()
メソッドは、渡された値が有限数かどうかを判断します。
_Number.isFinite(Infinity); // false
Number.isFinite(NaN); // false
Number.isFinite(-Infinity); // false
Number.isFinite(0); // true
Number.isFinite(2e64); // true
_
実際には、n === n + 1は51ビットより大きい数値で機能します。
1e16 + 1 === 1e16; // true
1e16 === Infinity; // false
ウィンドウでisFiniteを使用できます、isFinite(123)
:
次のような関数を書くことができます。
function isInfinite(num) {
return !isFinite(num);
}
そして次のように使用します:
isInfinite(null); //false
isInfinite(1); //false
isInfinite(0); //false
isInfinite(0.00); //false
isInfinite(NaN); //true
isInfinite(-1.797693134862316E+308); //true
isInfinite(Infinity); //true
isInfinite(-Infinity); //true
isInfinite(+Infinity); //true
isInfinite(undefined); //true
あなたもすることができます Number.isFinit
eは、値も数値であるかどうかをチェックし、undefined
およびnull
などをチェックするためにより正確です。
または、polyfill次のようにできます:
Number.isFinite = Number.isFinite || function(value) {
return typeof value === 'number' && isFinite(value);
}