以下幾行代碼有什麼區別?JavaScript中的函數表達式與聲明有什麼區別?
//Function declaration
function foo() { return 5; }
//Anonymous function expression
var foo = function() { return 5; }
//Named function expression
var foo = function foo() { return 5; }
- 什麼是名爲/匿名函數表達式?
- 什麼是聲明的函數?
- 瀏覽器如何處理這些結構的不同?
對類似問題(var functionName = function() {} vs function functionName() {})的回答不完全正確嗎?
繼承人它展示瞭如何使用遞歸調用的可能性的例子這是[關於命名函數表達式的好文章](http://kangax.github.com/nfe)。函數表達式與聲明在第一節中討論。 – 2009-06-18 17:09:25
海事組織的主要區別在於提升。這裏是關於這個主題的一篇很好的文章:http://www.adequatelygood.com/JavaScript-Scoping-and-Histing.html – 2014-11-18 18:03:59