請看如下程式碼:
console.log(a); var a = 2;
輸入結果會是什麼? 請說出理由
可能會有三種答案:
1、2
2、丟擲ReferenceError異常
3、undifined
對於編譯器來說 var a = 2; 這一條語句其實是兩條 :
var a; 和 a = 2;
在編譯過程中會先執行所有的宣告,包括 var a;
當程式執行到第二行時再執行的 a = 2;
所以輸入的結果應該是undifined;
請看如下程式碼:
console.log(a); var a = 2;
輸入結果會是什麼? 請說出理由
可能會有三種答案:
1、2
2、丟擲ReferenceError異常
3、undifined
對於編譯器來說 var a = 2; 這一條語句其實是兩條 :
var a; 和 a = 2;
在編譯過程中會先執行所有的宣告,包括 var a;
當程式執行到第二行時再執行的 a = 2;
所以輸入的結果應該是undifined;