1、二進位制和八進位制的表示方法
es6提供了二進位制和八進位制的表示方法,分別用字首ob(二進位制)和0o(八進位制)表示
將二進位制或者八進位制轉換為十進位制可以呼叫number方法
2、number.isnan() 和number.isfinite()
前者用來判斷乙個數字是否為nan,後者用來判斷乙個數字是否有限
3、parseint()和parsefloat()
es6將全域性的parseint()和parsefloat()移植到了number物件上,行為完全保持不變。
// es5的寫法
parseint('12.34') // 12
parsefloat('123.45#') // 123.45
// es6的寫法
number.parseint('12.34') // 12
number.parsefloat('123.45#') // 123.45
這樣做的目的,是逐步減少全域性性方法,使得語言逐步模組化。
4、number.isinteger()
number.isinteger()方法用來判斷乙個數字是否為整數。
js的內部整數和浮點數採用的同樣的儲存方法,所以1.0和1視為乙個值。
如果傳入的引數不是乙個數字會返回false
js內部採取ieee 754標準,數值儲存為64位雙精度格式,數值精度為53個二進位制位 (即2的53次方)小數點後15位有效,如果數值超過這個長度,54位以後的會被丟棄,這時isinteger()可能會誤判
如果乙個數值的絕對值小於5e-324(js可以識別的最小值)會被自動的轉為0,isinteger()可能會誤判。
5、math.trunc()
去除乙個數的小數部分,直接去掉 不考慮向上取整和向下取整
math.trunc(4.1) // 4
math.trunc(-4.1) // -4
math.trunc(-0.1234) // -0
對於非數值的情況,會內部呼叫number方法將其轉為數值
math.trunc('123.456') // 123
math.trunc(true) //1
math.trunc(false) // 0
math.trunc(null) // 0
6、math.sign()
用來判讀乙個數是正數還是負數、還是0,對於非數值的引數會呼叫number方法轉為數值,他會返回五個值分別為:
引數為正數,返回+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('') // 0
math.sign(true) // +1
math.sign(false) // 0
math.sign(null) // 0
math.sign('9') // +1
math.sign('foo') // nan
math.sign() // nan
math.sign(undefined) // nan
ES6 數值擴充套件
1.二進位制表示法 以0b開頭console.log b 0b111110111 4942.八進位制表示法 以0o開頭console.log 0o767 5033.判斷乙個數是否有盡 或者判斷是否為字元console.log 15 number.isfinite 15 isfinite 判斷數值是否...
es6 數值的擴充套件
1 二進位制的表示 字首 0b 八進位制的表示 0o 2 number.isfinite number.isnan 3 number.parseint number.parsefloat 4 number.isinteger number.epsilon 5 number.issafeinteger...
ES6 數值的擴充套件
es6提供了二進位制和八進位制數值的新寫法,分別用字首0b 0b 和0c oc 表示。用字首0b 0b 和0c oc 的字串轉十進位制數值需使用number方法。es6將parseint方法和parsefloat方法移植到了number物件上 js能準確表示的整數範圍在 number.max saf...