理解ES6 區塊級函數的語意
簡介
隨著ES6 的出現,區塊級函數聲明成為該語言的一個有價值的補充。儘管有最初的假設,這些函數的精確語義涵蓋了更廣泛的範圍,包括嚴格模式和非嚴格模式之間的區別以及瀏覽器相容性考慮因素。
語意
下表總結了區塊級函數語意的關鍵面向:
Execution Environment | Visible Outside Block | Hoisted to Top of Block | TDZ |
---|---|---|---|
Non-strict, no web extensions | Yes, like var | Yes | None |
Strict, no web extensions | No | Yes | None |
Non-strict, web extensions | Yes, like var | Yes | None |
Strict, web extensions | No | Yes, twice (function and block) | Function-scoped binding is undefined before declaration |
嚴格模式意義
嚴格模式意義
函數宣告會被提升到詞法區塊的頂端。
以上是ES6 區塊級函數語意在嚴格模式和非嚴格模式下有何不同,以及 Web 擴充如何影響它們?的詳細內容。更多資訊請關注PHP中文網其他相關文章!