JS的兩種函數聲明方式的區別


---恢復內容開始---

js中常見的兩種函數聲明方式如下:

// 函數表達式
var f = function() {
      console.log(1);  
}

// 直接聲明
function f (){
     console.log(2);
}

第一種方式,函數只能在聲明之后調用。因為這種方式聲明的函數,是在函數運行的階段才賦值給變量 f 的;

第二種方式,函數可以在聲明函數的作用域內任一地方調用。因為這種方式,是在函數解析階段賦值給標識符 f .

 

值得注意的是,當同時使用這兩種方式聲明同一個函數名,最終執行的是函數表達式聲明的函數。

承接上面的代碼:

// 函數表達式
var f = function() {
      console.log(1);  
}

// 直接聲明
function f (){
     console.log(2);
}

f();
// 1

 

---恢復內容結束---


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM