ES6扩展——数值扩展

1.0o代表八进制 0b代表二进制 ,通过Number()可转为10进制;
//0o 0O octanary八进制
            //0b 0B binary二进制
            console.log(0o16);  //14
            console.log(0b1111);  //15

 

2.parseInt方法从window换到了Number下面 Number.parseInt(1.23)
            Number.parseInt Number.parseFloat
            console.log(window.parseInt('1.23'));
            console.log(parseFloat('1.23'));
            
            console.log(Number.parseInt(1.23));
            console.log(Number.parseFloat(1.23));
            

 

3.Number.isNaN()--判断是否是非数值,只有NaN跟—— -NaN返回true,其余均返回false

console.log(Number.isNaN(NaN)); //true console.log(Number.isNaN(-NaN)); //true console.log(Number.isNaN('1')); //false console.log(Number.isNaN(1)); //false console.log(Number.isNaN(true)); //false


//自己定义一个NaN函数
function isNaN(value){
return value !== value;
}

 

4.Number.isFinite(2/0); 返回布尔值,判断数值是不是有限的,你可以用这个方法来判定一个数字是否是有限数字。isFinite 方法检测它参数的数值。如果参数是 NaN,正无穷大或者负无穷大,会返回false,其他返回 true。
//isFinite
            console.log(Number.isFinite(Infinity));
            console.log(Number.isFinite(2/0));
            console.log(Number.isFinite(2/4)); //T
            console.log(Number.isFinite(1234));//T
            console.log(Number.isFinite('1234'));
            console.log(Number.isFinite(true));
            console.log(Number.isFinite(NaN));
            

 



5.Number.isSafeInteger(); 返回布尔值,判断整数是否在精确范围内 Number.MAX_SAFE_INTEGER~Number.MIN_SAFE_INTEGER
            //Number.MAX_SAFE_INTEGER Number.MIN_SAFE_INTEGER
            //Number.isSafeInteger();返回布尔值
            console.log(Number.MAX_SAFE_INTEGER);
            console.log(Number.MIN_SAFE_INTEGER);
            
            console.log(Number.isSafeInteger(Number.MAX_SAFE_INTEGER -1));
            console.log(Number.isSafeInteger(Number.MAX_SAFE_INTEER+1))
            

 



6.新特性幂运算 **
            let a = (2 ** 10) ** 0;
            console.log(a);
            

 

//let a = 2 ** 3;结果为8
//let a = 2 ** 10 ** 0;结果为2
运算顺序从右向左,若想从左往右则需添加括号(2 ** 10) ** 0
posted @ 2020-06-14 00:38  是桂  阅读(297)  评论(1编辑  收藏  举报