JavaScriptでよく見かける3種類の関数の書き方

@ハクト 2022-07-18 13:01:33に投稿

JavaScriptで関数を定義する方法は大きく分けて2つ「関数宣言」と「関数式」があります。

2つの違いはFunctionオブジェクトの生成タイミング。「関数宣言」ではコードブロックが実行する前に生成され、「関数式」はコードブロック実行時に生成されます。

そのため関数宣言では関数定義より前に記述しても関数を呼び出せます。

以下がよく見る3種類の関数となります。

【関数宣言】functionキーワードで書く

sample('hello world'); //「hello world」を出力
function sample(para){
  console.log(para);
}
sample('hello world'); //「hello world」を出力

【関数式】関数リテラルで書く

sample('hello world'); //「sample is not defined」エラー
const sample = function(para){
  console.log(para);
};
sample('hello world'); //「hello warld」を出力

【関数式】アロー関数で書く

sample('hello world'); //「sample is not defined」エラー
const sample = para => {
  console.log(para);
};
sample('hello world'); //「hello warld」を出力

@ハクト

サービス作り・デザイン好き。70年代生まれのWEBエンジニア。WEBパーツをCSSでカスタマイズしてコピペできるサービスを運営中「Pa-tu」。実装したWEBパーツやツールを利用してWEB情報やライフハックを発信してます。

Twitter