揭示函數表達式中感嘆號的用途
在JavaScript 中,執行程式碼時,前面遇到感嘆號(!)函數可能會引發一些問題。讓我們深入研究一下它的功能及其在語法中的作用。
JavaScript 的語法規定,以「function foo() {}」形式宣告的函數是函數聲明,需要呼叫才能執行。然而,預處理帶有感嘆號(!)的函數聲明會將其轉換為函數表達式,後面可以跟括號來立即呼叫該函數。
代碼“!function foo() {}() " 最初可能看起來多餘,因為它聲明了一個函數,但也執行了它。然而,感嘆號在這裡有兩個用途:
雖然它本質上是一種語法技巧,但該技術允許為立即呼叫函數表達式(IIFE) 提供簡潔的語法。更明確的程式碼形式是:「(function(){})();」
最後,感嘆號也會計算函數的傳回值並將其強制轉換為布林值。由於 IIFE 通常不會明確傳回值,因此它們傳回 undefined,透過感嘆號將其強制為 true。通常不使用此佈林結果。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3