数值number
类型,用来表示任何类型的数字:整数或者浮点数都可以;
实际上,JS中的数值,是一个64位的浮点数,这与Java中的double类型的浮点数是一致的;
但是它有表示的范围,在范围内,JS可以准确表示,超出范围,JS不会报错,但是数值不准:
- 整数范围:±253-1,闭区间,即
±9007,1992,5474,0992
,那么超出16位的整数,必然表示不准; - 浮点数范围:±1.7976,9313,4862,3157308,JS有内置常量用于表示这个数值,即Number.MAX_VALUE;
- 能表示的最小的小数:5-324,JS有内置常量用于表示这个数值,即Number.MIN_VALUE;
- 位运算范围:JS只支持32位整数,即[-231, 231-1];
除了常规数字,还有一些数学意义上的特殊数字:
- 正无穷大:Infinity;添加个负号就是负无穷大
- Not a Number不是一个数字:NaN;任何与NaN进行的运算都会返回NaN,除了
NaN ** 0 = 1
;