es6在內建的math和number的內建物件上做出了很多新的擴充套件,常用總結:
1. number.isfinite()和number.isnan();
number.isfinite()方法:判斷數值是否有限;如果有限返回ture,否則返回false。當傳入引數不是數值時,返回false
number.isnan()方法:判斷傳入的數值是否為nan,如果是返回ture,否則返回false
number.isfinite(5) //ture
number.isfinite(ture) //false
number.isfinite("15") //false
number.isnan(nan) //ture
number.isnan(5) //false
2.number.parseint(), number.parsefloat()
es6中全域性性方法parseint()和parsefloat(),移到number物件上,減少全域性性方法,語言更趨向於模組化
parseint('12.34') // 12
parsefloat('12.34#')
number.parseint('12.34') // 12
number.parsefloat('12.34#')
3.number.isinteger()
number.isinteger()判斷乙個值是否為整數。注意:2和2.0相同
number.isinteger(3) //ture
number.isinteger(3.0) //ture
4.math.trunc()
math.trunc()去除乙個數的小數部分,返回整數部分.如果傳入的是非數值,這先number轉換為數值,如果無法轉換為數值,則返回nan
math.trunc(4.0) //4
math.trunc(-4.0) //-4
math.trunc(2) // 4
math.trunc(-0.12) //2
5.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
math.sign('foo'); // nan
math.sign(); // nan
6.指數運算子(**)
let a = 1.5
;a **= 2
;// 等同於 a = a * a
;let b = 4
;b **= 3
;// 等同於 b = b * b * b;
數值的擴充套件
es6提供了許多新的數值的擴充套件 二進位制使用字首0b或0b,八進位制使用字首0o或0o ex 0b111110111 503 true 0o767 503 true 如果要將0b和0o字首的字串數值轉為十進位制,要使用number方法。ex number 0b111 7 number 0o10 ...
十四 數值的擴充套件
1.number.isfinite 檢測乙個數值是否為有限數 console.log number.isfinite 100 true console.log number.isfinite 100 0 false console.log number.isfinite infinity false...
es6 數值的擴充套件
1 二進位制的表示 字首 0b 八進位制的表示 0o 2 number.isfinite number.isnan 3 number.parseint number.parsefloat 4 number.isinteger number.epsilon 5 number.issafeinteger...