为什么Infinity / Infinity不是1?

时间:2011-09-15 09:40:20

标签: javascript math infinity

如果

Infinity === Infinity
>> true

typeOf Infinity
>> "number"

然后为什么

Infinity / Infinity
>>NaN

而不是1?

4 个答案:

答案 0 :(得分:11)

请注意您对无限的算术行为所做的任何假设。

如果∞/∞= 1,则1×∞=∞。通过扩展,由于2×∞=∞,它也必须是∞/∞= 2的情况。

由于已经讨论过另一个答案,我想指出方程式2×∞=∞并不意味着存在多个无穷大。所有可数无限集具有相同的基数。即,整数集具有与奇数集相同的基数,即使第二集缺少了第一组中的一半元素。 (OTOH,还有其他的“无穷大”,例如实数的基数,但是可数无穷大加倍并不会产生其中的一个。也不会对它进行平方,对于那个问题。)

答案 1 :(得分:5)

因为specification这样说:

  

通过无穷大划分无穷大导致 NaN

我不是数学家,,但即使从这个角度来看,结果1也没有意义。无穷大可以是不同的,只是因为它们在JavaScript中是相同的并不能证明在所有其他情况下将它们视为相等(或者让除法返回1)。 edit:< / em>正如我所说,我不是数学家;))。

答案 2 :(得分:1)

可以从微积分中辨认出来!这是一种不确定的形式!

答案 3 :(得分:1)

结果在数学上未定义。它与javascript无关。请参阅following explanation