日期:2014-05-16  浏览次数:20350 次

认识javascript的数字

在javascript中数字只有一种类型。它在内部被表示为64位的浮点数,相当于java当中的double一样。javascript没有将整数进行分离出来,所以1和1.0是相同的值。这点其实很好,我们不用担心短整型在计算时的溢出问题了。很简单的说就是——数字就是数字。

数字的表示方式有如下一些形式:
123
123.456
1.23e+10 (表示:1.23乘以10的10次方)
-123.456
NaN:它是一个数值,表示一个不能产生正常结果的运算结果。NaN不等于任何值,包含它自己(有点晕)。这点很重要,NaN != NaN,所以当我们想判断数字运算结果不正确时,不能用 a*b == NaN的方式。当然有更好的办法,那就是用 isNaN(a*b)的方式。
Infinity:比javascript中数值的最大值还要大的值。(一般用于表示无穷大)

数字的运算:
+ - * / :加减乘除
% : 取余,如:3%2 == 1
与字符串连接:123 + "$" == "123$"
当逻辑值:0表示false,非0表示true
NaN时:非数值与数运算后将得到这个值,但是需用isNaN进行判断,如:isNaN("a"*3) == true,这种运算在其它严谨的计算机语言中将会出错的。

javascript当中还一个Math对象,对数字提供了一些方法,如:Math.floor(1.23) === 1,更多的其它方法待后续……