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')); // NaN

console.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()

这两个方法与全局方法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

你可能感兴趣的:(ES6数值处理新增的方法)