ES6中Math对象的部分扩展

1、Math.trunc()

该方法用于取出一个小数的小数部分,返回整数部分。看例子吧:

Math.trunc(1.234);  //1
Math.trunc(-2.34141);  //-2
Math.trunc(3.9);  //3
//对于非数值,Math.trunc会内部使用Number将其转为数值
Math.trunc("12.87656");  //12
//对于空值和无法截取整数的值,返回NaN
Math.trunc("a");  //NaN
Math.trunc();  //NaN
Math.trunc(NaN);  //NaN

2、Math.sign()

该方法用来判断一个数到底是正数,负数,还是0。有五中返回值。看下面例子吧:

Math.sign(23.235);  //1
Math.sign(25);  //1
Math.sign(0);  //0
Math.sign(0.0);  //0
Math.sign(-0.0);  //-0
Math.sign(-0);  //-0
Math.sign(-2);  //-1
Math.sign(-2.983958);  //-1
Math.sign('a');  //NaN
Math.sign();  //NaN
Math.sign(NaN);  //NaN

参数为正数时,返回1;

参数为0时,返回0;

参数为-0时,返回-0;

参数为负数时,返回-1;

参数为其他值时,返回NaN。

3、Math.cbrt()

该方法用于计算一个数的立方根,等同于Math.pow(n,1/3)方法。

Math.cbrt(8);  //2
Math.cbrt(-64);  //-4
//对于非数值,该方法内部也是先使用Number方法将其转化为数值,再进行计算
Math.cbrt("125");  //5
Math.cbrt("a");  //NaN

4、Math.hypot()

该方法用于计算所有参数平方和的平方根。

Math.hypot(3,4);   //5
Math.hypot(1,2,3);  //3.741657386773941
Math.hypot(-5);  //5
Math.hypot();  //0
Math.hypot(NaN);  //NaN
Math.hypot("a");  //NaN
Math.hypot(3,'4');  //5
Math.hypot(3,'a');  //NaN

以上几种方法均可以大大的简化代码,很方便。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持来客网!