zoukankan      html  css  js  c++  java
  • 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

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

  • 相关阅读:
    洛谷 1850 NOIP2016提高组 换教室
    2018牛客多校第三场 C.Shuffle Cards
    2018牛客多校第一场 B.Symmetric Matrix
    2018牛客多校第一场 A.Monotonic Matrix
    2018牛客多校第一场 D.Two Graphs
    2018宁夏邀请赛L Continuous Intervals
    2018宁夏邀请赛K Vertex Covers
    BZOJ
    HDU
    ACM International Collegiate Programming Contest, Egyptian Collegiate Programming Contest (ECPC 2015)
  • 原文地址:https://www.cnblogs.com/mmkan/p/6419393.html
Copyright © 2011-2022 走看看