7.運(yùn)算符的擴(kuò)展
(1)鏈判斷運(yùn)算符?.有三種寫法携栋。
解決對象屬性多層級調(diào)用需要先判斷對象是否存在的問題笋妥;
語法:用?號標(biāo)識可選掰烟,
obj?.prop?.name // 對象屬性是否存在
obj?.[expr] // 同上
func?.(...args) // 函數(shù)或?qū)ο蠓椒ㄊ欠翊嬖?/p>
(2)運(yùn)算符的擴(kuò)展(好像會報錯,可能還沒兼容)
||=急波、&&=从铲、??=相當(dāng)于先進(jìn)行邏輯運(yùn)算,然后根據(jù)運(yùn)算結(jié)果澄暮,再視情況進(jìn)行賦值運(yùn)算名段。它們的一個用途是,為變量或?qū)傩栽O(shè)置默認(rèn)值泣懊。
(3)null和undefine的判斷 ??
Let color=option.color || 'red'; //這樣寫會有嗯題伸辟,如果color為空,或是0,也會去red;
Let color = option.color ?? 'red'; //只有color為null馍刮,undefine的時候才返回red;
8.數(shù)值的新增
(1)分隔符_,區(qū)分長度較大的數(shù)字
(2)Number.isFinite():檢查一個數(shù)值是否為有限的信夫,返回布爾值;
(3)Number.isNaN():用來檢查一個值是否為NaN卡啰。
(4)的Number.parseInt():取整
(5)Number.parseFloat():取浮點類型
(6)Number.isInteger()用來判斷一個數(shù)值是否為整數(shù)
Math.trunc方法用于去除一個數(shù)的小數(shù)部分静稻,返回整數(shù)部分。
Math.sign方法用來判斷一個數(shù)到底是正數(shù)匈辱、負(fù)數(shù)振湾、還是零。對于非數(shù)值亡脸,會先將其轉(zhuǎn)換為數(shù)值押搪。返回+1,-1浅碾,0大州,-0,NaN
還有很多數(shù)學(xué)方法