ぼちぼちあしあと

プログラム初心者の備忘録です。

無名関数

無名関数なるものについて紹介する。

まずは変数 = 関数という形が取れるという話から。つまり以下のように書けるよということから始めたい。

let result = function sigma(n){
    let sum = 0;
    for (let i = 1; i <= n ; i++){
        sum = sum + i;
    }
    return sum;
}

この関数を参照するときはresult(10)のように書く。変数なのに関数になったのがなんとも変な感じだが、便利だ。

ここで、sigmaは関数の処理中には出てこないことに気がつく。そう、これは省略することができる。つまり、

let result = function(n){  // sigmaを省略した
    let sum = 0;
    for (let i = 1; i <= n ; i++){
        sum = sum + i;
    }
    return sum;
}

と書いてもよいのだ。もうお分かりだろう。変数 = function(引数)の形で書いているのが無名関数だ。これで一つ、命名に頭を悩ませることから解放されたのであった。