es6(五 數值的擴充套件)

2021-09-27 03:11:47 字數 2752 閱讀 6939

--es6新增的number方法:

1:isfinite()

number.isfinite()用來檢查一直數值是否是有限的。是返回true否則返回false。

注意:如果引數型別不是num一律返回false

2:isnan()

number.isnan()用來檢測乙個值是否為nan

注意:如果引數型別不是數值,直接返回false

1-2例:

const =console

log("isfinite()方法")

log('isfinite()方法用來檢測乙個字元是否是有限的')

log('15:'+number.isfinite(15))//true

log('字元15:'+number.isfinite('15'))//false

log('nan:'+number.isfinite(nan))//false

log('小數12.56:'+number.isfinite(12.56))//true

log('字串foo:'+number.isfinite('foo'))//false

log('infinity:'+number.isfinite(infinity))//false

log('true:'+number.isfinite(true))//false

log(math.pi)

log('pi:'+number.isfinite(math.pi))//true

log('isnan()方法')

log('isnan()方法用來檢測乙個數是否為非數值')

log('數值16:'+number.isnan(16))//false

log('字串16:'+number.isnan('16'))//false

log('true:'+number.isnan(true))//false

log('9/nan:'+number.isnan(9/nan))//true

注:es5本來就有isfinite()和isnan()方法,es6的區別在於isfinite()和isnan()不在是全域性方法,移植到了number物件上

傳統的全域性方法isfinite()和isnan()會先呼叫number()將非數值轉換為數值再進行處檢測,而es6中number物件下的isfinite()和isnan()方法只對數值有效。

3:parseint()和parsefloat()

es6將全域性方法parseint()和parsefloat()移植到了number物件上,行為完全一致。這樣做是為了逐步減少全域性性方法,是的語言逐步模組化。

4:isinteger()

number.isinteger()方法用來判斷乙個數值是否為整數。

log('數值:16'+number.isinteger(16))//true

log('浮點數:16.6'+number.isinteger(16.6))//false

log('特殊情況:')

log('16.0:'+number.isinteger(16.0))//true

注:以上存在一種特殊情況,即小數字為0時,js不會認為是浮點數。因為js內部整數和浮點數採用的是同樣的儲存方法,所以16和16.0被視為乙個數。

log('字元16'+number.isinteger('16'))//false

log('nan:'+number.isinteger(nan))//false

log('true:'+number.isinteger(true))//false

注:對於非數值會直接返回false

--es6新增的math方法:

es6在math物件上新增了17個數學相關的方法,新增的這些方法均為靜態方法,只能在math物件上呼叫。

1:math.trunc()

math.trunc()方法用於去除乙個數的小數部分,返回整數部分。

例:log('math.trunc()方法')

log('math.trunc()方法用於去除乙個數的小數部分')

log('16.66:'+math.trunc(16.66))//16

log('-16.66:'+math.trunc(-16.66))//-16

log('-0.12374:'+math.trunc(-0.12374))//-0

log('對於非數值:首先會先number()轉換為數值再取除小數')

log('true:'+math.trunc(true))//1

log('false:'+math.trunc(false))//0

log('null:'+math.trunc(null))//0

log('字串1.555:'+math.trunc('1.555'))//1

log('對於空值和無法擷取的值返回nan')

log('nan:'+math.trunc(nan))//nan

log('foo:'+math.trunc('foo'))//nan

log('undefined:'+math.trunc(undefined))//nan

2:math.sing()

math.sing()方法用來判斷乙個數是正數、負數還是0.有5中返回結果:

log('math.sign()方法')

log(math.sign(2))//+1

log(math.sign(-2))//-1

log(math.sign(0))//0

log(math.sign(-0))//-0

log(math.sign(nan))//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數值的擴充套件

1 二進位制和八進位制的表示方法 es6提供了二進位制和八進位制的表示方法,分別用字首ob 二進位制 和0o 八進位制 表示 將二進位制或者八進位制轉換為十進位制可以呼叫number方法 2 number.isnan 和number.isfinite 前者用來判斷乙個數字是否為nan,後者用來判斷乙...