JavaScript関数を使用して定義されているfunctionのキーワード。
あなたは、関数宣言や関数式を使用することができます 。
関数の宣言
以前、このチュートリアルでは、関数は次の構文で宣言されていることを学びました。
function functionName ( parameters ) {
code to be executed
}
宣言された関数はすぐに実行されません。 これらは、「後で使用するために保存」され、それらが呼び出されたとき(召集)、後に実行されます。
セミコロンは、実行可能なJavaScriptステートメントを分離するために使用されます。
関数の宣言は、実行可能ステートメントではありませんので、セミコロンで終了するのが一般的ではありません。
関数式
JavaScript関数は、また、 式を使用して定義することができます。
関数式は、変数に格納することができます。
関数式は、変数に格納された後、変数が関数として使用することができます。
上記の機能は、実際には匿名関数 (名前のない関数)です。
変数に格納された関数は、関数名を必要としません。 彼らは常に変数名を使用して(と呼ばれる)が呼び出されています。
それは実行可能文の一部であるため、上記の機能は、セミコロンで終了します。
Function()コンストラクタ
前の例で見てきたように、JavaScript関数を使用して定義されているfunctionのキーワード。
関数も呼ばれる組み込みのJavaScript関数コンストラクタで定義することができるFunction() 。
例
var myFunction = new Function("a", "b", "return a *
b");
var x = myFunction(4, 3);
»それを自分で試してみてください あなたは実際には関数コンストラクタを使用する必要はありません。 上記の例では、書き込みと同じです。
時間のほとんどは、あなたが使用して回避することができnew JavaScriptでキーワードを。
Function Hoisting
以前、このチュートリアルでは、あなたが学びました"hoisting" 。
巻上げは、現在のスコープの先頭に宣言を移動するのはJavaScriptのデフォルトの動作です。
巻上げは、変数の宣言に、関数の宣言に適用されます。
宣言されている前に、このため、JavaScript関数を呼び出すことができます。
myFunction(5);
function myFunction(y) {
return y * y;
}
式を使用して定義された関数が掲揚されていません。
自己呼び出し機能
関数式は「自己起動」させることができます。
自己起動式が呼び出されることなく、自動的に(開始)が呼び出されます。
式が続いている場合、関数式は自動的に実行されます()
あなたは、関数の宣言を自己起動することはできません。
あなたはそれが関数式であることを示すために、関数の周りに括弧を追加する必要があります。
上記の機能は、実際には匿名の自己呼び出す関数 (名前のない関数)です。
関数は値として使用することができ
JavaScriptの関数は、値として使用することができます。
JavaScriptの関数が使用可能です。
関数はオブジェクトです
typeof JavaScriptで演算子を返し"function"の機能のために。
しかし、JavaScript関数は、最良のオブジェクトとして記述することができます。
JavaScriptの関数は、 プロパティとメソッドの両方を持っています。
関数が呼び出されたときのarguments.lengthプロパティは、受け取った引数の数を返します。
toString()メソッドは、文字列としての機能を返します。
オブジェクトのプロパティとして定義された関数は、オブジェクトのメソッドと呼ばれています。
新しいオブジェクトを作成するために設計された機能は、オブジェクトコンストラクタと呼ばれています。