iT邦幫忙

2022 iThome 鐵人賽

DAY 4
0

學習hoisting之前可以先看上篇 直譯編譯

提升hoisting(接續上)

當執行以下程式碼時

console.log(a)
var a = 10

會輸出undefined而不是ReferenceError: a is not defined,這種現象就叫做 Hoisting,變數的宣告被「提升」到最上面去了。
而hoisting分為 創造與執行兩個階段 (上篇


(圖片來源:六角學院)

  1. 變數宣告跟函式宣告都會提升
  2. 只有宣告會提升,賦值不會提升
  3. 別忘了函式裡面還有傳進來的參數

題目

補充


(圖片來源:六角學院)


上一篇
直譯 && 編譯
下一篇
物件傳參考
系列文
JavaScript亂記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言