JS-Number对象

25 篇文章 0 订阅
1 篇文章 0 订阅

属性

1. constructor

返回对创建此对象的函数的引用

object.constructor

var test = new Number();
console.log(test.constructor == Number); //true

2. MAX_VALUE

返回JavaScript 中可表示的最大的数。它的近似值为 1.7976931348623157 x 10 308

Number.MAX_VALUE

console.log(Number.MAX_VALUE);

3. MIN_VALUE

返回 JavaScript 中可表示的最小的数(接近 0 ,但不是负数)。它的近似值为 5 x 10-324

Number.MIN_VALUE

console.log(Number.MIN_VALUE);

4. NaN

代表非数字值的特殊值。该属性用于指示某个值不是数字。可以把 Number对象设置为该值,来指示其不是数字值。

提示:请使用 isNaN() 全局函数来判断一个值是否是 NaN 值。

说明

Number.NaN 是一个特殊值,说明某些算术运算(如求负数的平方根)的结果不是数字。方法 parseInt() 和 parseFloat() 在不能解析指定的字符串时就返回这个值。对于一些常规情况下返回有效数字的函数,也可以采用这种方法,用 Number.NaN 说明它的错误情况。

JavaScript 以 NaN 的形式输出 Number.NaN。请注意,NaN 与其他数值进行比较的结果总是不相等的,包括它自身在内。因此,不能与 Number.NaN 比较来检测一个值是不是数字,而只能调用 isNaN() 来比较。

在 ECMAScript v1 和其后的版本中,还可以用预定义的全局属性 NaN 代替 Number.NaN。

Number.NaN

console.log(Number.NaN);

5. NEGATIVE_INFINITY

表示小于 Number.MIN_VALUE 的值。该值代表负无穷大。

说明

Number.NEGATIVE_INFINITY 是一个特殊值,它在算术运算或函数生成一个比 JavaScript 能表示的最小负数还小的数(也就是比 -Number.MAX_VALUE 还小的数)时返回

JavaScript 显示 NEGATIVE_INFINITY 时使用的是 -Infinity。这个值的算术行为和无穷大非常相似。例如,任何数乘无穷大结果仍为无穷大,任何数被无穷大除的结果为 0。

在 ECMAScript v1 和其后的版本中,还可以用 -Infinity 代替 Number.NEGATIVE_INFINITY。

Number.NEGATIVE_INFINITY

var x = -10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000;
console.log(x); //-Infinity

6. POSITIVE_INFINITY

表示大于 Number.MAX_VALUE 的值。该值代表正无穷大。

说明
Number.POSITIVE_INFINITY 是一个特殊值,它在算术运算或函数生成一个比 JavaScript 能表示的最大的数还大的数(也就是比 Number.MAX_VALUE 还大的数)时返回。

JavaScript 显示 POSITIVE_INFINITY 时使用的是 Infinity。这个值的算术行为和无穷大非常相似。例如,任何数乘无穷大结果仍为无穷大,任何数被无穷大除的结果为 0。

在 ECMAScript v1 和其后的版本中,还可以用 Infinity 代替 Number.POSITIVE_INFINITY。

Number.POSITIVE_INFINITY

var x = 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000;
console.log(x); //Infinity

方法

1. toString

可把一个 Number 对象转换为一个字符串,并返回结果

返回值

数字的字符串表示。例如,当 radix 为 2 时,NumberObject 会被转换为二进制值表示的字符串。

抛出

当调用该方法的对象不是 Number 时抛出 TypeError 异常。

NumberObject.toString(radix)

参数
  • 可选
    • 表示数字的基数,使 2 ~ 36 之间的整数。若省略该参数,则使用基数 10。但是要注意,如果该参数是 10 以外的其他值,则 ECMAScript 标准允许实现返回任意值。

var number = new Number(13337);
document.write (number.toString(2)) //转化成二进制

2. toLocaleString

把一个 Number 对象转换为本地格式的字符串

返回值

数字的字符串表示,由实现决定,根据本地规范进行格式化,可能影响到小数点或千分位分隔符采用的标点符号。

抛出

当调用该方法的对象不是 Number 时抛出 TypeError 异常。

NumberObject.toLocaleString()


var number = new Number(13337);
document.write (number.toLocaleString()) 

3. toFixed

把 Number 四舍五入为指定小数位数的数字

返回值

返回 NumberObject 的字符串表示,不采用指数计数法,小数点后有固定的 num 位数字。如果必要,该数字会被舍入,也可以用 0 补足,以便它达到指定的长度。如果 num 大于 le+21,则该方法只调用 NumberObject.toString(),返回采用指数计数法表示的字符串。

抛出

当 num 太小或太大时抛出异常 RangeError。0 ~ 20 之间的值不会引发该异常。有些实现支持更大范围或更小范围内的值。
当调用该方法的对象不是 Number 时抛出 TypeError 异常。

NumberObject.toFixed(num)

参数
  • 必须
    • num 规定小数的位数,是 0 ~ 20 之间的值,包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将用 0 代替。

var number = new Number(13337.359);
document.write (number.toFixed(2)) //四舍五入保留小数点后两位

4. toExponential

可把对象的值转换成指数计数法

返回值

返回 NumberObject 的字符串表示,采用指数计数法,即小数点之前有一位数字,小数点之后有 num 位数字。该数字的小数部分将被舍入,必要时用 0 补足,以便它达到指定的长度。

抛出

当 num 太小或太大时抛出异常 RangeError。0 ~ 20 之间的值不会引发该异常。有些实现支持更大范围或更小范围内的值。
当调用该方法的对象不是 Number 时抛出 TypeError 异常。

NumberObject.toExponential(num)

参数
  • 必须
    • 规定指数计数法中的小数位数,是 0 ~ 20 之间的值,包括 0 和 20,有些实现可以支持更大的数值范围。如果省略了该参数,将使用尽可能多的数字。

var number = new Number(13337.359);
document.write (number.toExponential(2))

5. toPrecision

可在对象的值超出指定位数时将其转换为指数计数法

返回值

返回 NumberObject 的字符串表示,包含 num 个有效数字。如果 num 足够大,能够包括 NumberObject 整数部分的所有数字,那么返回的字符串将采用定点计数法。否则,采用指数计数法,即小数点前有一位数字,小数点后有 num-1 位数字。必要时,该数字会被舍入或用 0 补足。

抛出

当 num 太小或太大时抛出异常 RangeError。1 ~ 21 之间的值不会引发该异常。有些实现支持更大范围或更小范围内的值。
当调用该方法的对象不是 Number 时抛出 TypeError 异常。

NumberObject.toPrecision(num)

参数
  • 必须
    • 规定必须被转换为指数计数法的最小位数。该参数是 1 ~ 21 之间(且包括 1 和 21)的值。有效实现允许有选择地支持更大或更小的 num。如果省略了该参数,则调用方法 toString(),而不是把数字转换成十进制的值。

var number = new Number(13337.359);
document.write (number.toPrecision(2))

文档内容出自 W3cSchool和菜鸟教程,
如需查看更详细的有关内容 请登录 http://www.w3school.com.cn/http://www.runoob.com/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值