js函式宣告和函式表示式的區別

2022-09-05 05:48:11 字數 483 閱讀 5838

顯而易見的區別:

1.函式宣告必須以function開頭,而函式表示式一定不能以function開頭;

2.函式宣告必須有識別符號(函式名),函式表示式可有可無;

其他的區別:

1.函式宣告會將識別符號提公升(宣告提公升),函式表示式不會提公升;

2.函式宣告和具名的函式表示式中的函式名都可以在函式自身內部被呼叫,區別在於具名函式表示式不能在函式自身外部(不能在父作用域中)被呼叫,函式宣告卻可以。如下:

1

var ex=function

example()78

example(); //錯誤,這裡呼叫函式是無效的;example在這裡未宣告;

9 ex();     //這裡呼叫ex是有效的;

1011

12function

example()

18 example();  //這裡呼叫函式是有效的

js函式宣告和函式表示式

區分函式宣告和表示式最簡單的方法是看function關鍵字出現在宣告中的位置 不僅僅是一行 而是整個宣告中的位置 如果function是宣告中的第乙個詞,那麼就是乙個函式宣告,否則就是乙個函式表示式。函式宣告和函式表示式間最重要的區別是它們的名稱識別符號將會繫結在何處。匿名函式表示式,因為funct...

JS 函式宣告和函式表示式

function name function為關鍵字 後加函式名name 可以把函式宣告放在它的呼叫語句之後。原因 解析器在向執行環境中載入資料時,解析器會在執行 前讀取函式宣告,即函式宣告提公升。a function a 沒有錯誤 var a function num1,num2 類似乙個變數賦值...

js 函式宣告和函式表示式

今天我們來講函式宣告和函式表示式 主要從函式定義和兩種定義的區別,以及塊級作用域來講 定義函式有兩種方式,一種是函式表示式,一種是函式宣告式 函式宣告式 function fun arguments 函式表示式 var fun function arguments 1 變數提公升 只有通過函式宣告的...