関数について(関数リテラル(無名関数・匿名関数)/ Functionコンストラクタ)

2016年12月31日

ユーザ定義関数の関数リテラル(無名関数・匿名関数)/ Functionコンストラクタを説明します。

 

 

関数リテラル(無名関数・匿名関数)


 

関数は変数に代入することが可能です。

 

 

変数への代入と、関数の定義を同時に行うことも可能で、下記のように関数の定義を値として記述する方法を「関数式」と呼びます。最後の } の終わりに、セミコロン(;)を忘れないようにして下さい。

 

関数式

 

 

関数名を省略することも可能で、この場合「関数リテラル(無名関数/匿名関数)」と呼ばれます。

 

関数リテラルの構文。無名関数を変数に代入しています。

 

function命令(関数宣言)と違い、関数リテラルの場合は必ず関数の定義の後に呼び出しを行います。下記のように定義の前に関数を呼び出すとエラーとなります。

 

スポンサーリンク

 

 

Functionコンストラクタ


 

JavaScriptの組み込みオブジェクトであるFunctionオブジェクトを利用して、下記のように関数を定義することもできます。

 

 

Functionコンストラクタには、引数(仮引数)を指定し、最後に関数を記述します。

 

square関数はFunctionオブジェクトのインスタンスであり、JavaScriptでは関数自体もオブジェクトであり、変数に代入できることが明確に認識できます。

 

基本的に関数の定義は、セキュリティ/パフォーマンスの関係からFunctionコンストラクタは利用せずに、function命令及び関数式を利用することが推奨されています。

 

関連ページ

関数について(function命令)

 

 

 

 

 

LINEで送る
Pocket

Copyright © 2019 思考の葉 All Rights Reserved.  プライバシーポリシー