JavaScript中的数字

一    数字

数字是javascript中的基础数据类型之一,javascript并不区分整型数值和浮点型数值.Javascript采用IEEE 754 标准定义的64位浮格式,基本上类似于Java中的double类型.

javascript支持的数值直接量:整型直接量,八进制和十六进制直接量,浮点型直接量.

 

二    Number对象

Number 对象,该对象是原始数值的包装对象。在必要时,JavaScript 会自动地在原始数据和对象之间转换。

构造函数 Number() 可以不与运算符 new 一起使用,而直接作为转化函数来使用。以这种方式调用 Number() 时,它会把自己的参数转化成一个数字,然后返回转换后的原始数值(或 NaN)。构造函数通常还用作 5 个有用的数字常量的占位符,这 5 个有用的数字常量分别是可表示的最大数、可表示的最小数、正无穷大、负无穷大和特殊的 NaN 值。类似于c#中的静态成员属性,不能被实例化.

 

Number.MAX_VALUE

可表示的最大数字

Number.MIN_VALUE

可表示的最小数字

Number.NAN

特殊的非数字值

Number.POSITIVE_INFINITY

表示正无穷大的特殊值

Number.NEGATIVE_INFINITY

表示负无穷大的特殊值

           另外还有两个特殊值常量Infinity和NaN,分别表示无穷大和非数字.

    NaN != NaN           

    Infinity == Infinity   

     Number.POSITIVE_INFINITY:Infinity 

 

     Number.NEGATIVE_INFINITY: -Infinity 

 

 

 

两个专门的函数用于判断特殊值.

isNaN()

检测特殊值NaN. NaN !== NaN,但是isNaN(NaN) == true;

isFinite()

检测一个数字是否NaN,正无穷大或者负无穷大

 

 

 

 

isNaN()的一个问题:它会隐式的将它的参数转换成数字,所以即便参数是个不能转换成数字的字符串,它也会返回true(转换成了NaN),这样就没用通过类型检测直接进行了判断,如下版本可以解决该问题:

Number.isNaN = function (value) {
    return typeof value === 'number' && isNaN(value);
};


三    数字的运算

使用算数运算符(+,-,*,/等)进行运算.或者使用Math对象的函数来进行计算.

 

 

参考资料如下(如有侵权请您及时联系我):

javascript权威指南(第五版)

http://www.w3school.com.cn/js/pro_js_referencetypes.asp

http://www.cnblogs.com/ziyunfei/archive/2012/09/19/2690866.html

posted on 2012-09-24 17:16  葵那  阅读(922)  评论(1编辑  收藏  举报

导航