JavaScriptの高階矢印関数。
JavaScriptは関数をオブジェクトとして扱い、関数をパラメーターとして別の関数に渡したり、他の関数から関数を返したりすることもできます。 JavaScriptでは、関数はファーストクラスの関数です。つまり、変数、オブジェクト、配列に格納できます。高次の矢印関数は、関数を取得するか、関数を返すか、またはその両方を実行できます。
以下は、JavaScriptの高階矢印関数のコードです-
例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; } .result, .sample { font-size: 18px; font-weight: 500; color: rebeccapurple; } .result { color: red; } </style> </head> <body> <h1>Higher order arrow functions in JavaScript</h1> <div class="sample">[22,33,44,55]</div> <br /> <div class="result"></div> <br /> <button class="Btn">CLICK HERE</button> <h3>Click on the above button to double each element of the above array</h3> <script> let resEle = document.querySelector(".result"); let BtnEle = document.querySelector(".Btn"); let doubleNum = (ele) => { return ele * 2; }; let arr = [22, 33, 44, 55]; function doubleArray(arr, fn) { let doubleArr = []; arr.forEach((element) => { doubleArr.push(doubleNum(element)); }); return doubleArr; } BtnEle.addEventListener("click", () => { resEle.innerHTML = "New array = " + doubleArray(arr, doubleNum); }); </script> </body> </html>
出力
[ここをクリック]ボタンをクリックすると-
-
JavaScriptの矢印関数を使用したラムダJavaScriptの矢印関数を使用したラムダ
Lambda関数は、1つの式のみで構成され、1つまたは複数のパラメーターを受け取ることができる小さな無名関数です。基本的に、関数をパラメーターとして他の関数に渡すことができます。 JavaScriptでは、関数はオブジェクトとして扱われるため、他の関数から受け渡ししてラムダ関数を実装できます。 以下は、JavaScriptで矢印関数を使用してラムダを実装するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" />
-
JavaScriptの矢印関数を使用すべきでない場合は?
矢印関数には独自のこれがないため、矢印関数をオブジェクトメソッドとして使用しないでください。オブジェクト自体ではなく、ウィンドウオブジェクトである囲んでいる字句スコープのこの値を取ります。これにより、目的のオブジェクトではなくウィンドウオブジェクトのプロパティを設定してアクセスするため、問題が発生する可能性があります。 以下は、JavaScriptの矢印関数を使用すべきでない場合を示すコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8