JS标准库之Number对象

概述

Number对象是数值对应的包装对象,可以作为构造函数使用,也可以作为工具函数使用。

作为构造函数时,它用于生成值为数值的对象。

var n = new Number(1);
typeof n // 'object'

上面代码中,Number对象作为构造函数使用,返回一个值为1的对象。

作为工具函数时,它可以将任何类型的值转为数值。

Number(true) // 1

静态属性

Number对象拥有以下一些静态属性

  • Number.POSITIVE_INFINITY:正的无限,指向Infinity
  • Number.NEGATIVE_INFINITY:负的无限,指向-Infinity
  • Number.NaN:表示非数值,指向NaN
  • Number.MIN_VALUE:表示最小的正数(即最接近0的正数,在64位浮点数体系中为5e-324),相应的,最接近0的负数为-Number.MIN_VALUE
  • Number.MAX_SAFE_INTEGER:表示能够精确表示的最大整数,即9007199254740991
  • Number.MIN_SAFE_INTEGER:表示能够精确表示的最小整数,即-9007199254740991

实例方法

Number对象有4个实例方法,都跟将数值转换成指定格式有关。

Number.prototype.toString()

Number对象部署了自己的toString方法,用来将一个数值转为字符串形式

(10).toString(); // "string"

toString()方法可以接受一个参数,表示输出的进制。如果省略不写,则默认为十进制,再输出字符串。否则就根据参数指定的进制,将一个数字转为某个进制的字符串。

(10).toString(2) // "1010"
(10).toString(8) // "12"
(10).toString(16) // "a"

上面代码中,10一定要放在括号里,这样表明后面的点表示调用对象属性。如果不加括号,这个点会被 JavaScript 引擎解释称小数点,从而报错。

Number.prototype.toFixed()

toFixed方法先将一个数转为指定位数的小数,然后返回这个小数对应的字符串。

(10).toFixed(2) // "10.00"
10.005.toFixed(2) // "10.01"

上面代码中,1010.005先转成2位小数,然后转成字符串。其中10必须放在括号里,否则后面的点会被处理成小数点。

toFixed方法的参数为小数位数,有效范围为 0 到 100,超出这个范围将抛出 RangeError 错误。

Number.prototype.toLocaleString()

接受一个地区码作为参数,返回一个字符串,表示当前数字在该地区的书写方式。

第二个参数为参数配置对象(可选),用来定制指定用途的返回字符串。

let num2 = 0.88;
let res = num2.toLocaleString('zh-CN', { style: 'percent' }); // "88%"

这些信息可能会帮助到你: 关于我们 | 饿了么返钱 | 捐赠支持

文章名称:JS标准库之Number对象
文章链接:https://www.bysjb.cn/js-library-number.html
THE END
分享
二维码
打赏
< <上一篇
下一篇>>