1. 程式人生 > >立即執行函式與匿名函式

立即執行函式與匿名函式

匿名函式與立即執行函式

匿名函式:

function(a, b) {
   console.log("a = " + a);
   console.log("b = " + b);
};

立即執行函式(函式執行完,立即被呼叫):

(function(a, b) {
    console.log("a = " + a);
    console.log("b = " + b);
})(123, 456);

l 匿名函式不能直接使用。


l 匿名函式可以依附於一個變數,並且這個變數名就是這個匿名函式的名字。


l 當匿名函式用在繫結事件中的時候,當這個事件執行的時候這個匿名函式也會被執行。


l 如果將匿名函式放入到表示式中並且後面加上小括號會自動執行這個函式(立即執行函式)


l 匿名函式不只是可以依附於一個變數,也可以依附於一個物件的屬性


l 同樣的匿名函式當做一個物件的屬性時也可以自呼叫。


l 匿名函式也可以傳遞引數


l 對於表示式函式同樣也可以傳遞引數


如果將一個自執行的匿名函式並且沒有返回值,賦值給一個變數那麼這個變數的值就是undefined。因為這個函式在賦值之前已經執行完了,而這個函式沒有返回值,所以就是undefined,如果有返回值,那麼這個變數的值就是那個匿名函式的返回值。