函數變量是否有「通常」 的功能VS在JavaScript
function MyFunc() {
// code...
}
和
var MyFunc = function() {
// code...
};
在JavaScript
之間有什麼區別?
函數變量是否有「通常」 的功能VS在JavaScript
function MyFunc() {
// code...
}
和
var MyFunc = function() {
// code...
};
在JavaScript
之間有什麼區別?
本文可能會回答你的問題:JavaScript function declaration ambiguity。
只有第一個是一個實際的函數聲明,而速記方法只是一個常規變量聲明,其中一個匿名函數被賦值爲它的值。
(看評論,也可能得到一些有用的信息太)
請注意評論;其中幾個是不正確的。 – 2009-08-26 13:06:39
鏈接可能會解釋所有內容,但在這裏也有一個小小的摘要總是稍微好一些。 – Trilarion 2014-07-11 12:20:53
沒有區別表面上,這樣你就可以在你的代碼中使用這兩種格式。
雖然js解釋器不同。
第一個是命名的功能。
第二個是一個匿名函數,它被賦值給一個變量。
另外,在調試的時候,你不會得到堆棧跟蹤中第二個函數的名字。
我知道他們之間的區別在於,無論您聲明它們,命名函數都可以在任何地方工作,變量中的函數不會。
a();//works
function a(){..}
工作
a();//error
var a=function(){..}
不工作,但如果你在聲明之後叫它它的工作原理
var a=function(){..}
a();//works
哇,我一直在努力的JavaScript多年,我不知道這...... CRAZY – Zoidberg 2009-08-26 11:06:37