同乙個標示符,先後用var和function宣告它。最後它是什麼呢?
1
2
3
4
var
a;
// 宣告乙個變數,識別符號為a
function
a()
alert(
typeof
a);
顯示的是「function」,即function的優先順序高於var。
有人覺得這是**順序執行的原因,即a被後執行的funcion覆蓋了。好,將它們調換下。
1
2
3
4
function
a()
var
a;
alert(
typeof
a);
結果仍然顯示的是「function」而非「undefined」。即函式宣告優先於變數宣告。
我們把**稍作修改,宣告a時同時賦值。
1
2
3
4
function
a()
var
a = 1;
// 注意此處
alert(
typeof
a);
這時顯示的是「number」卻不是「function」了。如果把var宣告語句放在最上面,結果也是一樣的
1
2
3
4
var
a = 1;
// 注意此處
function
a()
alert(
typeof
a);
這相當於
1
2
3
4
5
function
a()
var
a;
a = 1;
// 注意此處
alert(
typeof
a);
即把「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中函式表示式的宣告方式不止上面的一種方式.最常見的還有下面的...