JavaScript中函式宣告優先於變數宣告

2021-06-21 21:46:43 字數 1500 閱讀 5223

同乙個標示符,先後用var和function宣告它。最後它是什麼呢?

1

2

3

4

vara;// 宣告乙個變數,識別符號為a

functiona()

alert(typeofa);

顯示的是「function」,即function的優先順序高於var。

有人覺得這是**順序執行的原因,即a被後執行的funcion覆蓋了。好,將它們調換下。

1

2

3

4

functiona()

vara;

alert(typeofa);

結果仍然顯示的是「function」而非「undefined」。即函式宣告優先於變數宣告。

我們把**稍作修改,宣告a時同時賦值。

1

2

3

4

functiona()

vara = 1;// 注意此處

alert(typeofa);

這時顯示的是「number」卻不是「function」了。如果把var宣告語句放在最上面,結果也是一樣的

1

2

3

4

vara = 1;// 注意此處

functiona()

alert(typeofa);

這相當於

1

2

3

4

5

functiona()

vara;

a = 1;// 注意此處

alert(typeofa);

即把「var a = 1」拆分為兩步。 a被重新賦值了,自然是最後的那個值。

JavaScript中函式宣告優先於變數宣告

同乙個標示符,先後用var和function宣告它。最後它是什麼呢?var a 宣告乙個變數,識別符號為a function a alert typeof a 顯示的是 function 即function的優先順序高於var。有人覺得這是 順序執行的原因,即a被後執行的funcion覆蓋了。好,將...

javascript中的函式式宣告與變數式宣告

觀察下面兩段 試寫出hello word 的執行結果 變數式宣告 function hello msg alert msg 函式式宣告 function hello msg alert msg 對於變數式宣告,首先彈出word,然後彈出function,而函式式宣告,則兩次都是彈出function....

JavaScript函式宣告和函式表示式

1.function func 函式宣告 2.var fn function 函式表示式宣告的一種 在js中函式宣告和大部分語言一樣很好理解。但不能為匿名函式,即 function 會報錯。正確的宣告方式為 function func js中函式表示式的宣告方式不止上面的一種方式.最常見的還有下面的...