??:空值合并操作符
只有當左側表達式結果為
nullish時,才返回右側表達式結果。(和||的區(qū)別是:||只要左側表達式結果是falsely的值,就會返回右側表達式結果)
nullish:null或undefined
falsely:false、null、undefined、NaN、''、0
?.:可選鏈操作符
允許讀取連接對象鏈深處的屬性的值,而不必明確驗證每個引用是否有效。
?.操作符的功能類似于.鏈式操作符,不同之處在于,在引用為空(nullish)的情況下不會引起錯誤,該表達式短路返回值是undefined。與函數調用一起使用時,如果給定的函數不存在,則返回undefined
??=:邏輯空賦值運算符
僅在左側表達式為
nullish時對其賦值
||=:邏輯或賦值運算符
在左側表達式為
falsely時對其賦值