进制的转换
ES5方法
十进制转换其他进制 Number.toString()
let a = 5
console.log(a.toString(2)) // 101
其他进制转换为十进制 parseInt(原数字,原数字进制)
let a = 101
console.log(parseInt(a, 2)) // 5
ES6方法
0O表示16进制
0B表示2进制
let a = 0O1010
console.log(a) // 520
let b = 0B0101
console.log(b) // 5
一些API
isFinite() 判断是否有限,非Number类型会直接返回false
console.log(isFinite(1)) // true
console.log(isFinite('Faker')) // false
isNaN() 判断是否为NaN
parseInt() parseFloat() 转换为整形和浮点类型。
isInteger() 判断是否为整形
0.1+0.2===0.3? false
由于双精度标准的储存误差。
整数的范围
2 e53
console.log(Number.MAX_SAFE_INTEGER) // 9007199254740991
console.log(Number.MIN_SAFE_INTEGER) // -9007199254740991
isSafeInteger() 判断数值是否安全
Math的一些API
Math.trunc()
方法用于去除一个数的小数部分,返回整数部分。
Math.sign()
方法用来判断一个数到底是正数、负数、还是零。对于非数值,会先将其转换为数值。
它会返回五种值。
- 参数为正数,返回+1
- 参数为负数,返回-1
- 参数为 0,返回0
- 参数为-0,返回-0
- 其他值,返回NaN
Math.cbrt()
方法用于计算一个数的立方根。