本文介绍 JavaScript 中 Number 对象的构造方式,包括直接赋值与 new Number()。详细解析 Number 对象的静态常量属性,如 MAX_VALUE 和 NaN。重点讲解数值字符串转换方法 toString、保留小数位的 toFixed、科学计数法 toExponential 以及精度控制 toPrecision 的用法与参数限制。
Number 对象构造与常量属性
Number 对象用于表示数值,其基本构造方式如下:
具体实现代码如下:
var num = 10;
var num = new Number();//num == 0
var num = new Number(value);
其中 value 参数应为数值或可转换为数值的类型,例如字符串 '1002'。若传入无法转换的值(如 'M122'),则返回 NaN。
1、常量,属性
Number 静态常量详解
| MAX_VALUE | 可表示的最大的数。 // 1.7976931348623157e+308 |
| MIN_VALUE | 可表示的最小的数。 // 5e-324 |
| NaN | 非数字值。 // NaN |
| NEGATIVE_INFINITY | 负无穷大,溢出时返回该值。//-Infinity |
| POSITIVE_INFINITY | 正无穷大,溢出时返回该值。//Infinity |
数值字符串转换方法
2、toString() 方法可将 Number 对象转换为字符串并返回结果。
NumberObject.toString(radix); radix 为可选参数,指定表示数字的基数,取值范围为 2 到 36 之间的整数。 若省略该参数,默认使用基数 10。 返回值为数字的字符串表示。例如,当 radix 为 2 时,NumberObject 会被转换为二进制值表示的字符串。 例:
具体代码示例如下:
var num = 10;
document.write(num.toString(2));输出结果:1010
注意:若调用该方法的对象不是 Number 类型,将抛出 TypeError 异常。
数值格式化与精度控制
3、toFixed() 方法可将 Number 四舍五入为指定小数位数的数字。
NumberObject.toFixed(num); num 为必需参数,规定小数的位数,取值范围为 0 到 20 之间的整数(包含 0 和 20),部分实现可能支持更大的数值范围。 如果省略该参数,将默认使用 0。 返回值说明: 当 num 在 0-20 之间时不会抛出异常;若 num 大于 20,则有可能抛出异常。
代码示例如下:
var num = new Number(13.37);
document.write (num.toFixed(1))输出结果:13.4
4、toExponential() 方法可将对象的值转换为指数计数法(科学计数法)。
NumberObject.toExponential(num) num 为必需参数,规定指数计数法中的小数位数,取值范围为 0 到 20 之间的整数(包含 0 和 20),部分实现可能支持更大的数值范围。 如果省略该参数,将使用尽可能多的数字。
代码示例如下:
var num = new Number(10000);
document.write (num.toExponential(1))输出结果:
1.0e+4
小数点后的 0 表示仅保留一位小数。
5、toPrecision() 方法可在对象的值超出指定位数时将其转换为指数计数法。
toPrecision(num),num 指定位数,即超过该位数时采用指数计数法。 例:
代码示例如下:
var num = 10000;
document.write (num.toPrecision(4)+'<br>');
document.write (num.toPrecision(8));输出结果:
1.000e+4//1.000共4位数
10000.000//10000.000共8位
如需了解更多 JavaScript 语法,建议参考《JavaScript 参考教程》与《JavaScript代码风格指南》,欢迎持续关注本站。