javascript不区分整数值和浮点数值,所有的数值都是用64位浮点数值表示的。实数有无数个,但是JavaScript通过浮点数的形式只能表示其中有限的个数,其表示值类似Java,是一个近似值。
javascrpt算术运算在溢出、下溢或被零整除时不会报错。
- 溢出:+Infinity和-Infinity。
- 下溢:会返回0,当一个负数发生下溢时,返回负零,在这里注意一点,负零和正零是相等的。
- 被零整除:返回无穷大。0/0返回非数字值NaN。无穷大除以无穷大,给任意负数做开平方运算或算术运算符和不是数字或无法转换为数字的操作一起用时均返回NaN。注意NaN与任何值都不相等,包括自己,可以用x!=x来判断x的值是否为NaN。isNaN(),参数为NaN或非数字值(字符串或对象),返回true;isFinite(),在参数不是NaN,无穷大时返回true。