//数值扩展
// Number.EPSILON 是JavaScript 的最小精度 如果2个数的差值小于 Number.EPSILON ,我们认为他们相等
// 主要用于浮点数的运算
function equal(a,b){
if(Math.abs(a-b) < Number.EPSILON){
return true;
}else{
return false;
}
}
console.log(equal(0.1+0.2,0.3))
//开头写法 二进制0b、八进制0o、十六进制oX
let secondNumber = 0b1010;
console.log(secondNumber) //10
let eightNumber = 0o0777;
console.log(eightNumber) //511
let sixteenNumber = 0x0157;
console.log(sixteenNumber) //343
//检测一个数值是否为有限数
console.log( Number.isFinite(100) ); //true
console.log( Number.isFinite(100/0) ); //false
console.log( Number.isFinite(Infinity) ); //false 正无穷
//把isNaN 挂到Number上,es5中,isNaN是单纯的方法 任何数值除以0会返回NaN
//NaN Not a Number
let x = 5/0 //Infinity 重点
let y = 0/0 //NaN 重点
console.log( Number.isNaN(x) ) //false
console.log( Number.isNaN(y) ) //true
console.log( Number.isNaN(123) ) //false
parseInt、parseFloat 挂到Number上,es5是独立的
console.log( Number.parseInt('323.02oanogngo'))//323
console.log( Number.parseFloat('3.2302oanogngo'))//3.2302
//判断一个数是不是整数
console.log(Number.isInteger(123)); //true
console.log(Number.isInteger(123.890)); //false
console.log(Number.isInteger('123.8PPP')); //false
//将数值的小数抹掉,不进行四舍五入
console.log( Math.trunc(5.78)) //5
console.log( Math.trunc('xonsn')) //NaN
//检测一个数,是正数、负数、还是0
console.log(Math.sign(11)) //1
console.log(Math.sign(-11)) //-1
console.log(Math.sign(0)) //0
网友评论