alert(1/0)
提醒Infinity
和alert(1/-0)
提醒-Infinity
。 alert(-1/-0)
提醒Infinity
,正如我在使用真实号码进行某些操作时所期望的那样。我无法说无限是一个可衡量的价值。 javascript是否认为它是一些数字?
答案 0 :(得分:8)
是的,Infinity
和-Infinity
是special values of the Number type。从ES5规范:
还有另外两个特殊值,称为正无穷大和负无穷大。为简洁起见,这些值也分别用符号+∞和-∞表示为说明目的。 (请注意,这两个无限数值是由程序表达式
+Infinity
(或简称为Infinity
)和-Infinity
生成的。)
另请注意,NaN
也是数字类型的值,尽管它是“非数字”的首字母缩写。
答案 1 :(得分:3)
JavaScript使用IEEE-754 to represent numerical types;该规范包括non-numbers的值,例如+/- Infinity和“NaN”。
(1/0) // => Infinity
typeof(Infinity) // => "number"
Number.POSITIVE_INFINITY === Infinity // => true
Number.NEGATIVE_INFINITY === -Infinity // => true
包括无限值的算术和逻辑运算应该按预期运行。
答案 2 :(得分:0)
来自Mozilla文档:
Infinity的初始值是Number.POSITIVE_INFINITY。 值Infinity(正无穷大)大于任何其他数字(包括其自身)。此值在数学上表现得像无穷大;例如,任何正数乘以无穷大都是无穷大,任何除以无穷大的数字都是0.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Infinity