無名関数と即時関数

無名関数と即時関数について分からずに使っていたので調べてみました。

無名関数

普通の関数
function hoge(){

}
無名関数
var hoge = function (){

};  

普通の関数が、function文
無名関数が、function式 となります。

function式では、関数名が省略可能なので、関数名を書いていません。
ということで無名関数とよばれています。

即時関数

関数定義と関数呼び出しをまとめることができます。

(function test(){
  alert('test');
})();

この関数は、以下をまとめたものです。

//関数定義
function test(){
  alert('test');
}
//関数呼び出し
test();

一度しか使わない関数を実行する時などに使います。