javascriptの無名関数、即時関数について

関数とは

関数とは|function|ファンクション - 意味/定義 : IT用語辞典

引数と呼ばれるデータを受け取り、定められた通りの処理を実行して結果を返す一連の命令群

javascriptの関数は以下のように書く

function 関数名(){
    //処理
}
function helloWorld( ){
    console.log("Hello World");
}

無名関数とは

名前の通り、関数名がない関数。 無名関数は以下のように書く

function(){
    //処理
}

引数に定義した関数を代入することも可能

var sum = function(x, y){
    return x + y;
}
console.log(sum(1, 1));

無名関数は、関数名をいちいち考えなくて済むというメリットがある。

即時関数とは

即時関数は関数を定義すると同時に実行するための構文。即時関数は以下のように書く

(function (){
    //処理
})();

無名関数と同様、引数に定義した関数を代入することも可能

var sum = (function (x, y){
    return x + y;
})(1, 1);

通常の関数は再利用を前提としているのに対して、即時関数は再利用を前提としていない。また、即時関数は関数を定義すると同時に実行されるため、初期化などに使うと有効