Number对象
JavaScript 只有一种数字类型。
可以使用也可以不使用小数点来书写数字。
# 数字
极大或极小的数字可通过科学(指数)计数法来写:
var y=123e5; // 12300000
var z=123e-5; // 0.00123
1
2
2
# 所有 JavaScript 数字均为 64 位
# 精度
整数(不使用小数点或指数计数法)最多为 15 位。
var x = 999999999999999; // x 为 999999999999999
var y = 9999999999999999; // y 为 10000000000000000
1
2
2
小数的最大位数是 17,但是浮点运算并不总是 100% 准确:.
var x = 0.2+0.1; // 输出结果为 0.30000000000000004
1
# 八进制和十六进制
如果前缀为 0,则 JavaScript 会把数值常量解释为八进制数,如果前缀为 0 和 "x",则解释为十六进制数。
var y = 0377;
var z = 0xFF;
1
2
2
注意
绝不要在数字前面写零,除非您需要进行八进制转换。
默认情况下,JavaScript 数字为十进制显示。
但是你可以使用 toString() 方法 输出16进制、8进制、2进制。
var myNumber=128;
myNumber.toString(16); // 返回 80
myNumber.toString(8); // 返回 200
myNumber.toString(2); // 返回 10000000
1
2
3
4
2
3
4
# 无穷大(Infinity)
# NaN - 非数字值
var a ='kls'
console.log(isNaN(a)) //true
var b=1000
console.log(isNaN(b)) //false
1
2
3
4
2
3
4
# Number 属性
| 属性 | 描述 |
|---|---|
| Number.MAX_VALUE | 最大值 |
| Number.MIN_VALUE | 最小值 |
| Number.NaN | 非数字 |
| Number.NEGATIVE_INFINITY | 负无穷,在溢出时返回 |
| Number.POSITIVE_INFINITY | 正无穷,在溢出时返回 |
| Number.EPSILON | 表示 1 和比最接近 1 且大于 1 的最小 Number 之间的差别 |
| Number.MIN_SAFE_INTEGER | 最小安全整数。 |
| Number.MAX_SAFE_INTEGER | 最大安全整数。 |
# 数字方法
| 方法 | 描述 |
|---|---|
| Number.parseFloat() | 将字符串转换成浮点数,和全局方法 parseFloat() (opens new window) 作用一致。 |
| Number.parseInt() | 将字符串转换成整型数字,和全局方法 parseInt() (opens new window) 作用一致。 |
| Number.isFinite() | 判断传递的参数是否为有限数字。 |
| Number.isInteger() | 判断传递的参数是否为整数。 |
| Number.isNaN() | 判断传递的参数是否为 isNaN()。 |
| Number.isSafeInteger() | 判断传递的参数是否为安全整数。 |
# 数字类型原型上的一些方法
| 方法 | 描述 |
|---|---|
| toExponential() | 返回一个数字的指数形式的字符串,如:1.23e+2 |
| toFixed() | 返回指定小数位数的表示形式。var a=123; b=a.toFixed(2); // b="123.00" |
| toPrecision() | 返回一个指定精度的数字。如下例子中,a=123 中,3会由于精度限制消失:var a=123; b=a.toPrecision(2); // b="1.2e+2" |
编辑 (opens new window)
上次更新: 2021/08/13, 23:21:49