IEEE 754中Infinity的用例有哪些?

时间:2016-08-19 08:37:30

标签: javascript floating-point ieee-754

我想知道在Infinity下用于IEEE-754的情况是什么?是否在溢出(正无穷大)或下溢(负无穷大)时使用?

1 个答案:

答案 0 :(得分:3)

某些计算会返回无穷大值,例如-1/0Math.log(0)返回-Infinity

对称地,它们可用于计算输入,例如2/-Infinity返回-0

当实际值太大而无法表示时,也会产生无穷大,例如Math.exp(999)Math.exp(709)+Math.exp(709)+Math.exp(709)

但是当他们需要比任何其他数字更大(或更低)的数字时,或者当您想要明确地引用无穷大时,它们也会被使用。例如,我通常使用数值范围(区间),即{min, max}结构,当范围没有被限制时,我使用无穷大,如{-Infinity, 3.2},可以注明为]-∞, 3.2]在数学。

小心尽管JS生态系统中无穷大的支持并不是那么好。例如,JSON通常不支持它们(但有些图书馆会帮助解决这个问题,例如gson或我自己的parseMore)。