下面是ES6新增的math和Number方法的详细讲解:
Math对象
Math.trunc()
Math.trunc(x)
方法用于去除一个数的小数部分,返回整数部分。实现原理为直接舍去所有小数位。
示例代码:
Math.trunc(4.9); //4
Math.trunc(-4.9); //-4
Math.sign()
Math.sign(x)
方法用来判断一个数是正数、负数、还是零。返回值有3种情况:正数返回+1、负数返回-1、零返回0。
示例代码:
Math.sign(10); // 1
Math.sign(-10); // -1
Math.sign(0); // 0
Math.cbrt()
Math.cbrt(x)
方法用于计算一个数的立方根。
示例代码:
Math.cbrt(27); // 3
Math.expm1()
Math.expm1(x)
方法返回e^x - 1的值。如果x非常接近0,则Math.exp(x) - 1可能不够精确,此时可以使用Math.expm1(x)计算。
示例代码:
Math.expm1(1); // 1.718281828459045
Number对象
Number.isFinite()
在ES6以前的版本,我们可以通过isFinite()
方法检测一个数值是否是有限数。在ES6中,Number对象上新增了Number.isFinite()
方法,功能相同,也是用来检测一个数值是否为有限数。不过,凭借其所属对象的类型,它会拒绝非数值输入。
该方法返回一个布尔值,即true或false。
示例代码:
Number.isFinite(1/0); //false
Number.isFinite(NaN); //false
Number.isFinite(1); //true
Number.isNaN()
在ES6以前的版本,我们可以通过isNaN()
方法检测一个值是否为NaN。在ES6中,Number对象上新增了Number.isNaN()
方法,功能相同。但是,它会驳回任何非NaN的参数。
示例代码:
Number.isNaN(NaN); //true
Number.isNaN(123); //false
Number.isNaN("apple"); //false
Number.parseInt()
在ES6之前,我们一般会使用全局函数parseInt()
将一个字符串解析成整数。在ES6中,新增了Number.parseInt()
方法,相当于是定义在Number对象上的,该方法和全局函数parseInt()
方法一样,功能也一样。不过,Number.parseInt()
只解析整数部分。
示例代码:
Number.parseInt("123"); // 123
Number.parseInt("123.45"); // 123
Number.parseFloat()
同理,ES6中新增了Number.parseFloat()
方法,相当于是定义在Number对象上的,该方法和全局函数parseFloat()
方法一样,功能也一样。不过,Number.parseFloat()
只解析浮点数。
示例代码:
Number.parseFloat("123.45"); // 123.45
Number.parseFloat("123.45px"); // 123.45
以上就是ES6新增的Math和Number相关的方法的详细讲解和示例代码,希望能够帮助到您。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:ES6新增的math,Number方法 - Python技术站