JavaScript Number类

🌙
手机阅读
本文目录结构

Number 类型

首先输出看有哪些方法;

console.log(new Number())

方法如下:

toExponential
toFixed
toLocaleString
toPrecision
toString
valueOf

Number 类型也重写了 valueOf() 、 toLocaleString() 和 toString()方法。重写后的 valueOf() 方法返回对象表示的基本类型的数值,另外两个方法则返回字符串形式的数值;

为 toString() 方法传递一个表示基数的参数,告诉它返回几进制数值的字符串形式,

var num = 10;
console.log(num.toString()); //"10"
console.log(num.toString(2)); //"1010"
console.log(num.toString(8)); //"12"
console.log(num.toString(10)); //"10"
console.log(num.toString(16)); //"a"

toFixed 保留几位小数

按照指定的小数位返回数值的字符串表示

var num1 = 10,
    num2=20.1231231231232;
console.log(num1.toFixed(2)); //"10.00"
console.log(num2.toFixed(2)); //"20.12"

能够自动舍入的特性,使得 toFixed() 方法很适合处理货币值。但需要注意的是,不同浏览器给这个方法设定的舍入规则可能会有所不同。在给 toFixed() 传入 0 的情况下,IE8 及之前版本不能正确舍入范围在{(0.94,0.5],[0.5,0.94)}之间的值。对于这个范围内的值,IE 会返回 0,而不是1 或 1;其他浏览器都能返回正确的值。IE9 修复了这个问题。

toFixed() 方法可以表示带有 0 到 20 个小数位的数值。但这只是标准实现的范围,有些浏览器也可能支持更多位数。

不建议直接实例化 Number 类型

var numberObject = new Number(10);
var numberValue = 10;
console.log(typeof numberObject); //"object"
console.log(typeof numberValue); //"number"
console.log(numberObject instanceof Number); //true
console.log(numberValue instanceof Number); //false

在使用 typeof 操作符测试基本类型数值时,始终会返回 “number” ,而在测试 Number 对象时,则会返回 “object” 。类似地, Number 对象是 Number 类型的实例,而基本类型的数值则不是。

AXIHE / 精选资源

浏览全部教程

面试题

学习网站

前端培训
自己甄别

前端书籍

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili

关注我: Github / 知乎

于2021年离开前端领域,目前重心放在研究区块链上面了

我叫朱安邦,阿西河的站长

目前在杭州从事区块链周边的开发工作,机械专业,以前从事平面设计工作。

2014年底脱产在老家自学6个月的前端技术,自学期间几乎从未出过家门,最终找到了满意的前端工作。更多>

于2021年离开前端领域,目前从事区块链方面工作了