ES6系列之數值經常使用方法總結

Number

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

Number.isInteger()

它肯定傳遞給函數的值是否爲整數。若是函數值是true,則返回此方法,false則跳出。安全

Number.isInteger(19);  //true

Number.isNaN()

Number.isNaN(NaN);  //true

Number.isFinite()

用於測試傳遞的值是否爲有限數dom

Number.isFinite(null);  //true

Number.isSafeInteger()

它測試傳遞的值是不是一個安全整數
安全整數定義爲知足如下兩個條件的整數:函數

  1. 該數字能夠精確地表示爲IEEE-754雙精度數
  2. 數字的IEEE-754表示不能是舍入任何其餘整數以適合IEEE-754表示的結果。
  3. 根據這個定義,安全整數是從 - (2的53次方 - 1)包含到2的53次方 - 1包含的全部整數。

ECMAScript 6還引入了兩個相關的常量值:Number.MAX_SAFE_INTEGER和Number.MIN_SAFE_INTEGER。前者表示JavaScript中的最大安全整數,即2的53次方 - 1,然後者表示最小安全整數,即 - (2的53次方 - 1)。測試

Number.isSafeInteger('19'); //false

Number.parseFloat()& Number.parseInt()

ES6 將全局方法parseInt()和parseFloat(),移植到Number對象上面,行爲徹底保持不變。code

實例方法

numObj.toExponential(fractionDigits)

返回一個用冪的形式 (科學記數法) 來表示Number 對象的字符串。對象

fractionDigits

可選。一個整數,用來指定小數點後有幾位數字。ip

numObj.toFixed(digits)

返回所給數值的定點數表示法的字符串形式。ci

digits

小數點後數字的個數。字符串

var numObj = 12345.6789;

numObj.toFixed();         // 返回 "12346":進行四捨五入,不包括小數部分
numObj.toFixed(1);        // 返回 "12345.7":進行四捨五入

numObj.toPrecision(precision)

返回以定點表示法或指數表示法表示的一個數值對象的字符串表示,四捨五入到 precision 參數指定的顯示數字位數。

precision

可選。一個用來指定有效數個數的整數。

var numObj = 5.123456;
console.log("numObj.toPrecision()  is " + numObj.toPrecision());  //輸出 5.123456
console.log("numObj.toPrecision(5) is " + numObj.toPrecision(5)); //輸出 5.1235

Math

Math.trunc() § ⇧

Math.trunc方法用於去除一個數的小數部分,返回整數部分。

Math.trunc(4.1) // 4
Math.trunc(4.9) // 4
Math.trunc(-4.1) // -4
Math.trunc(-4.9) // -4
Math.trunc(-0.1234) // -0

Math.sign()

Math.sign方法用來判斷一個數究竟是正數、負數、仍是零。對於非數值,會先將其轉換爲數值。

它會返回五種值。

參數爲正數,返回+1;
參數爲負數,返回-1;
參數爲 0,返回0;
參數爲-0,返回-0;
其餘值,返回NaN。

Math.sign(-5) // -1
Math.sign(5) // +1
Math.sign(0) // +0
Math.sign(-0) // -0
Math.sign(NaN) // NaN

若是參數是非數值,會自動轉爲數值。對於那些沒法轉爲數值的值,會返回NaN。

Math.min() & Math.max()

Math.min()用於肯定一組數值中的最小值。Math.max()用於肯定一組數值中的最大值。

舍入方法

Math.ceil()執行向上舍入,即它老是將數值向上舍入爲最接近的整數;
Math.floor()執行向下舍入,即它老是將數值向下舍入爲最接近的整數;
Math.round()執行標準舍入,即它老是將數值四捨五入爲最接近的整數;

random()方法

Math.random()方法返回介於0到1之間一個隨機數,不包括0和1。

Math.abs(num)

返回num的絕對值

相關文章
相關標籤/搜索