JavaScript

関数宣言 関数式 アロー関数 の使い方

最近この3つの関数について学び、1日かけてようやく最低限の理解はできたので、自分用メモとして書きます。

間違っている場合は、ご指摘をくださると嬉しいです。


関数宣言

関数宣言とは、以下の書き方を指します。

関数宣言した関数を使いたい場合は、関数名();とすればOKです。今回の場合は、sample();とすればOKということです。


sample

function sample(){

console.log('sample');
}


関数式

関数式とは、以下の書き方を指します。関数式は、変数に関数を代入するという書き方をします。なので、このsampleを使いたい場合は、変数名();とすればOKです。今回の場合は、sample()となります。

{}の後に;をつけ忘れないようにしましょう。

;がなくても動いてしまいますが、関数式は変数に関数を代入するような書き方なので、一般的に;は書くべきだそうです。


sample

const sample = function(){

console.log('sample');
};

(追記)

ありがたい事に補足をいただいたので、ここにもメモとして残します。

関数式は上のような書き方もできますが、以下のように関数名を書いた書き方もできるようです。

const sample = function sample1(){

console.log('sample');
};

この場合は、

* 関数外から呼び出す場合は変数名();でないと呼び出せません。

* 関数名();は関数内でないと使えないようです。

じゃあ関数内で関数を呼び出すときってどんなとき?

→再帰関数を使うするとき


アロー関数

アロー関数は、以下の書き方を指します。

この関数は、関数式を省略して書けるというメリットがあります。

・・・正確にいうと、他に大きなメリットがあるのですが(this問題とか)今は省略します。

上の関数式の「function()」の部分が「() =>」に変わった書き方と解釈してOKです。

アロー関数は関数式と同じく、使いたいときは変数名();でOKです。

また、こちらも;忘れにはお気をつけて。


sample

const sample = () => {

console.log('sample');
};