當 console.log(Ming); 移到函式外時就會出現 Ming is not defined。
因為 JavaScript 的作用域在函式裡,所以在函式裡宣告變數外層是讀不到的。向外查找找不到時就會顯現出 xxx is not defined。
而這個範例是因為當我們寫好 JavaScript 程式碼時,作用域就已經決定了(語法作用域),不會因執行過程中改變作用域。因此 value 的值依然還是 1,而非 fn2 函式中的 2。
當 console.log(Ming); 移到函式外時就會出現 Ming is not defined。
因為 JavaScript 的作用域在函式裡,所以在函式裡宣告變數外層是讀不到的。向外查找找不到時就會顯現出 xxx is not defined。
而這個範例是因為當我們寫好 JavaScript 程式碼時,作用域就已經決定了(語法作用域),不會因執行過程中改變作用域。因此 value 的值依然還是 1,而非 fn2 函式中的 2。