Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么无穷大不是1?_Javascript_Math_Infinity - Fatal编程技术网

Javascript 为什么无穷大不是1?

Javascript 为什么无穷大不是1?,javascript,math,infinity,Javascript,Math,Infinity,如果 及 那为什么呢 typeOf Infinity >> "number" 而不是1?因为 将一个无穷大除以一个无穷大,得到NaN 我不是数学家,但即使从这个角度来看,拥有1作为结果也是没有意义的。无穷大可以是不同的,仅仅因为它们在JavaScript中是相等的,并不能证明在所有其他情况下它们是相等的(或者让除法返回1)。(编辑:正如我所说,我不是数学家;)。它可以从微积分一中辨认出来!这是一种不确定的形式 结果在数学上没有定义。它与javascript无关。请参阅。注意您对无穷

如果

那为什么呢

typeOf Infinity
>> "number"
而不是1?

因为

将一个无穷大除以一个无穷大,得到NaN


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

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

结果在数学上没有定义。它与javascript无关。请参阅。

注意您对无穷大的算术行为所做的任何假设

如果∞/∞ = 1,然后是1×1∞ = ∞. 引申自2×∞ = ∞, 情况也必须如此∞/∞ = 二,


由于在讨论中它与另一个答案相反,我想指出等式2×∞ = ∞ 并不意味着存在多个无穷大。所有可数无限集都具有相同的基数。即,整数集合与奇数集合具有相同的基数,即使第二个集合缺少第一个集合的一半元素。(哦,还有其他类型的“无穷大”,比如实数集的基数,但将可数无穷大加倍并不能产生其中一个。就此而言,平方也不能产生。)

但为什么在规范中会出现这种情况?因为无穷大和无穷大有时是不一样的。比如说,好吧,但我应该问的问题是,为什么无穷大===无穷大返回true@Hierow
Infinity
如果返回false,则它将无效。考虑<代码> var x=无穷大;如果(x==无穷大).没有不同的无穷大。Hilbert hotel的观点是要证明所有可数无限集都具有相同的基数,即使有些集看起来比其他集大。断言这一点是完全正确的∞ = ∞.微积分还说1/0是无限的,而不是例如,
DivideByZeroException
,但请告诉我的编译器。@Jon:1/0未定义,但
lim(x->0)1/x=Inf
。如果你使用的是“标准”数学,也就是说,Javascript编译器产生的结果(这是OP感兴趣的)与Javascript完全相关。它遵循数学所说的是一个额外的事实。当然,但这种设计与语言本身无关。该语言实现了一个数学概念,这就是为什么这个问题的答案是数学的,与编程语言没有任何关系。同意。但在我看来,这个问题的答案是“因为规范上说X”。正如您所说,“为什么规范中说的是X而不是Y”的答案是数学上的。
typeOf Infinity
>> "number"
Infinity / Infinity
>>NaN