當前位置:高考升學網 > 高考問答 > 正文

函數聲明和函數表達式的區別

更新:2023-09-17 05:04:13 高考升學網

var init = function() { }; 是函數表達式,函數在代碼執行的到當前行的時候才被執行,init 才被賦值。function init() {} 是函數聲明,和 var 一樣,會被提前到代碼最前面定義。

函數聲明和函數表達式的區別

1).以函數聲明的方法定義的函數,函數名是必須的,而函數表達式的函數名是可選的。(函數聲明整體會被提升到當前作用域的頂部,函數表達式也提升到頂部但是只有其變量名提升)

2).以函數聲明的方法定義的函數,函數可以在函數聲明之前調用,而函數表達式的函數只能在聲明之后調用。

3).以函數聲明的方法定義的函數并不是真正的聲明,它們僅僅可以出現在全局中,或者嵌套在其他的函數中,但是它們不能出現在循環,條件或者try/catch/finally中,而函數表達式可以在任何地方聲明。

換句話說,函數聲明不是一個完整的語句,所以不能出現在if-else,for循環,finally,try catch語句以及with語句中。

最新圖文

dna水解后得到的產物是什么

時間:2023-09-16 21:0:39

invention可數嗎

時間:2023-09-13 09:0:04

地球大氣層從低到高依次是

時間:2023-09-18 07:0:54

宇文新州之懿范句式

時間:2023-09-21 15:0:08
9999久久久国产精品,日韩在线一区二区三区欧美,日韩精品综合在线人妻,免费AAAAAA毛片看
一区二区日韩动漫AV | 热门午夜国产视频观看92 | 日本三级香港三级人妇少妇 | 日韩精品午夜视频一区二区 | 亚洲欧洲日本无在线码不卡 | 中字幕AV一区二区三区 |