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