1. 程式人生 > >函數聲明 和 var聲明的優先級

函數聲明 和 var聲明的優先級

執行上下文 總結 function div 函數 func 進行 整體 cti

1 function demo() {
2     console.log(5)
3 }
4 var demo = function(){
5     console.log(4)
6 }
7 console.log(demo())   // 4
1 var demo = function(){
2      console.log(4)
3  } 
4 function demo() {
5      console.log(5)
6  }
7  console.log(demo())   // 4

上圖倆段代碼打印出的結果都是4,可以總結出

  1.   函數聲明和變量聲明都有提升機制
  2.   函數聲明是整體提升的方式,來進行聲明的提升
  3.   函數聲明賦值要早於函數聲明賦值
  4.   函數聲明賦值,實在執行上下文的開始階段進行的
  5.   變量聲明賦值,實在執行到賦值語句的時候進行的賦值

函數聲明 和 var聲明的優先級