ES6標準入門之數值的拓展解說

  ES6提供了二進制和八進制數值的新寫法,分別用前綴0b(或0B)和0o(或0O)表示。安全

  0b111110111 === 503                    // true函數

  0o767 === 503                             // truespa

  若是要將使用0b、0o和0x前綴的字符串數值轉化爲十進制,要使用Number方法。對象

  ES6中對Number對象的拓展ip

  一、Number.isFinite()  //檢查一個數值是否有限,返回true/false;字符串

  二、Number.isNaN()  //檢查一個值是否爲NaN,返回true/false;it

  三、Number.parseInt()  //將一個值轉化爲整數;二進制

  四、Number.parseFloat()  //將一個值轉化爲浮點數;方法

  五、Number.isInteger()  //判斷一個值對否爲整數,返回true/false;im

  六、Number.EPSILON  //新增一個極小的常量,2.220446049250313e-16

  七、安全整數和Number.isSafeInteger()

  JavaScript可以準確表示的整數範圍在-2的53次冪到2的53次冪之間(不包含兩個端點),超過這個範圍就沒法精確表示。ES6引入Number.MAX_SAFE_INTEGET = Math.pow(2, 53) - 1 表示安全範圍的上限,引入Number.MIN_SAFE_INTEGER =  Math.pow(-2, 53) - 1表示安全範圍的下限。Number.isSafeInteger()就是判斷某個值是否在安全範圍以內,與安全整數的兩個邊界值比較一下。

  ES6中對Math對象的拓展

  一、Math.trunc()  // 去除一個數的小數部分,返回整數部分;

  二、Math.sign()  //判斷一個數究竟是正數、負數仍是0,

    其返回值有5中狀況:

    1)、參數爲正數,返回+1;

    2)、參數爲負數,返回-1;

    3)、參數爲0,返回0;

    4)、參數爲-0;返回-0;

    5)、其餘值,返回NaN;

  三、Math.cbrt()  //計算一個數的立方根;

  四、Math.clz32()  //JavaScript的整數使用32位二進制形式表示,返回一個數的32位無符號整數形式有多少個前導0;

  五、Math.imul()   //返回兩個數以32位帶符號整數形式想成的結果;

  六、Math.fround()   //返回一個數的單精度浮點數形式;

  七、Math.hypot()  // 返回全部參數平方和的平方根;

  八、對數方法

    1)、Math.expm1(x)   //返回e的x次冪減1,即Math.exp(x) - 1;

    2)、Math.log1p(x)   //返回ln(1+x),即Math.log(1+x);

    3)、Math.log10(x)   //返回以10爲底的x的對數;

    4)、Math.log2(x)    //返回以2爲底的x的對數;

  九、雙曲函數方法

    1)、Math.sinh(x)  // 返回x的雙曲正弦;

    2)、Math.cosh(x)  // 返回x的雙曲餘弦;

    1)、Math.tanh(x)  // 返回x的雙曲正切;

    1)、Math.asinh(x)  // 返回x的反雙曲正弦;

    1)、Math.acosh(x)  // 返回x的反雙曲餘弦;

    1)、Math.atanh(x)  // 返回x的反雙曲正切;

  十、Math.signbit()  //判斷一個值的正負,起返回值以下:

    1)、參數是NaN,返回false;

    2)、參數是-0,返回true;

    1)、參數是負數,返回true;

    1)、其餘狀況返回false;

  十一、指數運算符(**)

    2 ** 2    // 4

  指數運算符和等號結合造成一個新的賦值運算符(**=) 

    let a = 2;

    a **= 2等同於a = a * a

相關文章
相關標籤/搜索