JavaScriptクロージャと無名関数
無名関数
匿名は、その名前が示すように、名前識別子なしで関数を作成できます。他の関数の引数として使用できます。それらは変数名を使用して呼び出されます:
JavaScript無名関数の使用方法は次のとおりです:
var func = function() { alert(‘This is anonymous'); } func();
別の例は次のとおりです。
setTimeout(function() { alert('Demo'); }, 3000);
JavaScriptクロージャ
JavaScriptでは、すべての関数がクロージャのように機能します。クロージャは、呼び出されたときに宣言されたスコープを使用する関数です。呼び出されたスコープではありません。
次に例を示します:
<!DOCTYPE html> <html> <body> <h2>JavaScript Closures</h2> <script> var p = 20; function a() { var p = 40; b(function() { alert(p); }); } function b(f) { var p = 60; f(); } a(); </script> </body> </html>
-
JavaScriptの匿名ラッパー関数
匿名関数は、コードスニペット、JavaScriptライブラリ、関数などをラップして、他のライブラリコードと競合しないように、それらの可視性と名前空間を制御するために使用されます。 IIFE(即時呼び出し関数式)は、この目的で使用されます。 以下は、JavaScriptで匿名ラッパー関数を実装するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport&q
-
JavaScriptのファーストクラス関数
JavaScriptは関数をオブジェクトとして扱い、関数をパラメーターとして別の関数に渡したり、他の関数から関数を返したりすることもできます。 JavaScriptでは、関数はファーストクラスの関数です。つまり、変数、オブジェクト、配列に格納できます。高階関数は、関数を取得するか、関数を返すか、またはその両方を実行できます。 以下は、JavaScriptでファーストクラス関数を実装するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT