函數表達式javascript
定義函數表達式有兩種方法:
java
(1)第一種是函數聲明,意思是函數聲明提早,在執行代碼以前會先讀取函數聲明,這就意味着能夠把函數聲明放在調用它的語句後面。函數
語法:spa
function functionName(arg0, arg1, arg2) {
// 函數體
}
例子:code
sayHi(); function sayHi() { alert("Hi"); }
因此該例子不會拋出錯誤,由於在代碼執行以前會先讀取函數聲明。blog
(2)第二種是使用函數表達式,這種函數爲匿名函數(也叫拉姆達函數),由於 function 關鍵字後面沒有標識符。ip
語法:io
var functionName = function(arg0, arg1, arg2) { // 函數體 }
例子:function
sayHi(); // 錯誤,函數還不存在 var sayHi = function() { alert("Hi"); }
該使用方法是錯誤的,使用前必須先賦值,即若使用函數表達式方法建立函數,需遵循先定義後使用。以下:
var sayHi = function() { alert("Hi"); } sayHi();
爲防止出錯,養成良好的習慣,無論是函數聲明方式仍是函數表達式方式,均可以使用先聲明後使用的方法,減小錯誤。class