並沒有認真搞懂
使用 var 宣告的變數 scope
是在最接近它的 function 裡
故在 a 處,因為 variable hoisting 的關係
x 變數是存在的,但是仍未賦值
故印出來的結果是 undefined
假設我們沒有宣告 var x = 2
則 a 處就會觸發 "ReferenceError: x is not defined"
function foo() {
console.log(x); // a
var x = 2;
console.log(x);
}
foo();
沒有留言:
張貼留言