jQuery問號表達式是一種在jQuery中使用的簡潔的語法結構,可以讓我們處理那些可能返回undefined的情況。
// 傳統方式,判斷是否存在 if($('#my-elem').length >0) { $('#my-elem').show(); } // 使用問號表達式 $('#my-elem')?.show();
如上面的例子所示,使用傳統方式判斷是否存在需要寫很多代碼。而使用jQuery問號表達式可以讓代碼更簡潔,同時更易讀。
問號表達式的語法非常簡單,它使用問號和點號組成,如下所示:
$('#my-elem')?.show();
在這個例子中,問號表示代碼會對這個對象是否存在進行條件判斷,如果對象存在則執行show方法,否則不會執行任何操作。
問號表達式的使用場景非常廣泛,特別是在我們需要訪問嵌套的屬性或調用函數時。下面是另一個例子:
const myObj = { prop1: { prop2: 'Hello, world!' } }; console.log(myObj?.prop1?.prop2?.toUpperCase()); // 輸出:HELLO, WORLD!
在這個例子中,我們嘗試訪問一個嵌套的屬性,如果其中任何一個屬性不存在,則不會執行任何操作,并且表達式的返回值為undefined。
總的來說,問號表達式是一個非常實用的語法結構,可以使我們的代碼更簡潔、更可讀,同時也可以避免一些意外的錯誤。因此,在你使用jQuery時,不妨嘗試使用問號表達式來處理可能返回undefined的情況。