JavaScript中問號的三種用法??和?.以及 ?: ,您知道嗎?
最近,看了一些關于JavaScript的測試腳本,覺得JS 中問號的用法還是蠻有意思的,于是做了一下總結,在這里分享給大家!JS中的問號大概有三種用法,分別是:空值合并操作符、可選鏈操作符和三目運算。
問號問號(??)
空值合并操作符??是一個邏輯操作符,當左側的操作數為 null 或者 undefined 時,返回其右側操作數,否則返回左側操作數。
例如
問號點 (?.)
可選鏈操作符(?.)可選鏈操作符允許讀取位于連接對象鏈深處的屬性的值,而不必明確驗證鏈中的每個引用是否有效。 使用它的好處是引用為null 或者 undefined的情況下不會引起錯誤。
語法:obj?.prop obj?.[expr] arr?.[index] func?.(args)
例如
問號冒號(?: )
這是三目運算,具體表達式是(condition ? exprIfTrue : exprIfFalse)
該表達式的含義是 條件condition是真,則執行exprIfTrue ,否則執行exprIfFalse
舉個例子大家就懂了