數(shù)值新增方法:
1:Number.isFinite:判斷參數(shù)是不是有限字符矾睦,即不是Infinity
如果參數(shù)類型不是數(shù)值信柿,一律返回false
2:Number.isNaN:檢查一個(gè)值是否為NaN
如果參數(shù)類型不是NaN囤捻,一律返回false
全局的isFinite()和isNaN()和新增方法不同的區(qū)別是评抚,傳統(tǒng)方法先調(diào)用Number()將非數(shù)值的值轉(zhuǎn)為數(shù)值熟空,再進(jìn)行判斷谦秧,而這兩個(gè)新方法只對(duì)數(shù)值有效竟纳,非數(shù)值一律返回false,非NaN才返回false
3:Number.parseInt,Number.parseFloat,跟全局的parseInt,parseFloat方法行為完全一致疚鲤,目的是為了減少全局方法锥累,使得語(yǔ)言逐步模塊化
4:Numebr.isInteger:判斷數(shù)值是否為整數(shù)
參數(shù)非數(shù)值,返回false
5:Number.EPSILON:極小的常量集歇,表示1與大于1的最小浮點(diǎn)數(shù)之間的差
Math.pow(2,-52)
設(shè)置這個(gè)值的目的在于為浮點(diǎn)數(shù)計(jì)算桶略,設(shè)置一個(gè)誤差范圍。
6:安全整數(shù)和Number.isSafeInteger
Number.MAX_SAFE_INTEGER 最大安全整數(shù):9007199254740991
Number.MIN_SAFE_INTEGER 最小安全整數(shù):-9007199254740991
Number.isSafeInteger表示檢測(cè)一個(gè)整數(shù)是否落在這個(gè)范圍之內(nèi)
7:Math對(duì)象上擴(kuò)展的靜態(tài)方法诲宇,是為了數(shù)學(xué)計(jì)算
Math.trunc :取數(shù)的整數(shù)部分际歼,去除小數(shù)部分,
非數(shù)值參數(shù)會(huì)先使用Number方法將其轉(zhuǎn)為數(shù)值;
空值和無(wú)法截取整數(shù)的值姑蓝,返回NaN;
相當(dāng)于
負(fù)數(shù)時(shí):取Math.ceil(返回大于或等于一個(gè)給定數(shù)字的最小整數(shù))
正數(shù)時(shí)鹅心,取Math.floor(返回小于或等于一個(gè)給定數(shù)字的最大整數(shù))
Math.sign:判斷一個(gè)數(shù)到底是正數(shù),負(fù)數(shù)它掂,還是0
正數(shù)巴帮,返回+1
負(fù)數(shù),返回-1
0虐秋,返回0
-0榕茧,返回-0
其他,返回NaN
參數(shù)非數(shù)值客给,則會(huì)自動(dòng)轉(zhuǎn)為數(shù)值用押,對(duì)于那些無(wú)法轉(zhuǎn)為數(shù)值的值,返回NaN
Math.cbrt:開(kāi)立方根靶剑,非數(shù)值先調(diào)用Number蜻拨,轉(zhuǎn)為數(shù)值池充,再將其轉(zhuǎn)為數(shù)值
Math.clz32:將參數(shù)轉(zhuǎn)為32位無(wú)符號(hào)整數(shù)的形式,然后返回32位值里面有多少個(gè)前導(dǎo)0
小數(shù)參數(shù)缎讼,只考慮整數(shù)部分收夸,空值或其他類型,先轉(zhuǎn)為整數(shù)血崭,再計(jì)算
Math.imul:返回兩個(gè)以32位帶符號(hào)整數(shù)形式相乘的結(jié)果卧惜,返回的也是一個(gè)32位的帶符號(hào)整數(shù)
Math.fround:返回一個(gè)數(shù)的32位單精度浮點(diǎn)數(shù)形式
Math.hypot:返回所有參數(shù)的平方和的平方根
對(duì)數(shù)方法:Math.expm1():e^x-1
Math.log1p:Math.log(1+x)
Math.log10:Math.log10(x)返回以10為底的x的對(duì)數(shù)
Math.log2:返回以2為底的x的對(duì)數(shù)
雙曲線方法:
Math.sinh:雙曲正弦
Math.cosh:雙曲余弦
Math.tanh:雙曲正切
Math.asinh:反雙曲正弦
Math.acosh:反雙曲余弦
Math.atanh:反雙曲正切
指數(shù)運(yùn)算符:
符號(hào),規(guī)則右結(jié)合
2**3**2 === 2**(3**2)
a **= 2 //指數(shù)賦值結(jié)合運(yùn)算符
BigInt數(shù)據(jù)類型:第8種數(shù)據(jù)類型 數(shù)字后帶n
typeof 1n //'bigint'