-
二进制和八进制
二进制以 0b(0B)开头
八进制以0o(0O)开头 -
转换成十进制
Number('0b111')
Number('0o10')
- 检查数值是否为有限或者为空
//检查数值是否有限
Number.isFinite(15) //true
Number.isFinite(true) //false
Number.isFinite("hello") //false
//检查数值是否为空
Number.isNaN(NaN) //true
Number.isNaN(15) //false
- 解析整数或浮点数
Number.parseInt('12.34') //12
Number.parseFloat('12.34') // 12.34
- 判断是否为整数
Number.isInteger(12) //true
Number.isInteger(13.1) //false
- 极小的常亮 Number.EPSILON
可以使用这个数值设置一个误差范围
5.551115123125783e-17 < Number.EPSILON
// true
- 数值的极限
ES6 数值可以表示的范围是-253~253,超过这个数后就不精确了
//Number.MAX_SAFE_INTEGER 最大数
//Number.MIN_SAFE_INTEGER 最小数
Number.MAX_SAFE_INTEGER === Math.pow(2, 53) - 1// true
Number.MIN_SAFE_INTEGER === -Number.MAX_SAFE_INTEGER// true
//判断是否是安全整数
Number.isSafeInteger(9007199254740993)// false
Number.isSafeInteger(990)// true
- 去除小数部分
Math.trunc(12.34) //12
Math.trunc(-4.1) //4
Math.trunc('12.34') //12 会先转换成数值再求值
- 判断正负值和零
Math.sign(-5) // -1
Math.sign(5) // +1
Math.sign(0) // +0
Math.sign(-0) // -0
Math.sign('foo'); // NaN
Math.signbit(2) //false
Math.signbit(-2) //true
Math.signbit(0) //false
Math.signbit(-0) //true
- 求立方根
Math.cbrt(-1) // -1
Math.cbrt(0) // 0
Math.cbrt(1) // 1
//对于非数值,Number会先将其转为数值
Math.cbrt('8') // 2
Math.cbrt('hello') // NaN
- 三角函数
Math.sinh(x)
Math.cosh(x)
Math.tanh(x)
Math.asinh(x)
Math.acosh(x)
Math.atanh(x)
网友评论