ES6数值处理新增的方法

1、Number.isFinite() 判断一个数字是否是有限数字。(Number. 可以省略)

console.log('15是否有限数值:',Number.isFinite(15)); //15是否有限数值: true console.log('NaN是否有限数值:',Number.isFinite(NaN)); //NaN是否有限数值: false

2、Number.isInteger() 用来判断一个数字是否为整数。(Number. 不可以省略)
console.log(Number.isInteger(15)); // true console.log(Number.isInteger(15.0)); // true console.log(Number.isInteger(15.1)); // false console.log(Number.isInteger("15")); // false console.log(Number.isInteger(true)); // false

3、Number.isSafeInteger() 判断一个数字是不是在存储的安全范围里 ,js存储的安全范围值是 -(2^53 -1)到 (2 ^53 -1) 。(Number. 不可以省略)
console.log(Number.isSafeInteger(15)); // true console.log(Number.isSafeInteger('15')); // false

4、Math.trunc() 去除一个数字的小数部分。返回整数部分。
console.log(parseInt('15.16g')); // 15 console.log(Math.trunc('15.16g')); // NaNconsole.log(parseInt('15.022e23')); // 15 console.log(Math.trunc('15.022e23')); // 1.5022e+24

5、Math.sign() 用来判断一个数到底是正数,负数,还是0。有五种返回值。(如果是数字字符串会先使用Number()来转换为看能不能转化为数字)
参数为正数时,返回1;
参数为0时,返回0;
参数为-0时,返回-0;
参数为负数时,返回-1;
参数为其他值时,返回NaN。
console.log(Math.sign(23.23)); // 1 console.log(Math.sign(23)); // 1 console.log(Math.sign(0)); // 0 console.log(Math.sign(-0)); // -0 console.log(Math.sign(-0.0)); // -0 console.log(Math.sign(-2)); // -1 console.log(Math.sign('0a')); // NaN console.log(Math.sign('5')); // 1 console.log(Math.sign()); // NaN console.log(Math.sign(NaN)); // NaN

6、Math.cbrt() 求一个数的立方根。等同于Math.pow(n,1/3)方法。(如果是数字字符串会先使用Number()来转换为看能不能转化为数字,不能转化则为NaN)
console.log(Math.cbrt(8)); // 2 console.log(Math.cbrt(-64)); // -4 console.log(Math.cbrt('125')); // 5 console.log(Math.cbrt('a')); // NaN

7、Number.parseInt(), Number.parseFloat() 【ES6数值处理新增的方法】这两个方法与全局方法parseInt()和parseFloat()一致,目的是逐步减少全局性的方法,让语言更模块化。
parseInt('12.64'); // 12 parseFloat('123.45f'); // 123.45 Number.parseInt('12.34'); // 12 Number.parseFloat('123.45fd'); // 123.45 Number.parseInt === parseInt; // true Number.parseFloat === parseFloat; // true

    推荐阅读