[解決済み] キュアリング」とは何ですか?
2022-03-14 02:53:13
質問
私はいくつかの記事やブログでcurried関数への参照を見ましたが、良い説明(少なくとも意味のあるもの!)を見つけることができません。
どのように解決するのですか?
Curryingとは、複数の引数を取る関数を、それぞれが1つの引数だけを取る一連の関数に分解することです。以下はJavaScriptでの例です。
function add (a, b) {
return a + b;
}
add(3, 4); // returns 7
aとbの2つの引数をとり、それらの和を返す関数です。これから、この関数をカレーにします。
function add (a) {
return function (b) {
return a + b;
}
}
これは、引数を1つ取る関数です。
a
そして、別の引数を取る関数を返します。
b
で、この関数はそれらの和を返す。
add(3)(4);
var add3 = add(3);
add3(4);
最初のステートメントは7を返し、同様に
add(3, 4)
ステートメントを使用します。2番目のステートメントでは、新しい関数
add3
は、引数に3を加える。(これをクロージャと呼ぶ人もいます。) 3つ目の文は
add3
という操作で、3に4を足して、やはり7を生成する。
関連
-
Javascript Bootstrapのグリッドシステム、ナビゲーションバー、ローテーションの説明
-
vueにおけるfilterの適用シーンについて解説します。
-
[解決済み】ExpressJS - throw er Unhandled errorイベント
-
[解決済み】ExpressJS : res.redirect()が期待通りに動かない?
-
JavaScriptのgetElementById()メソッド入門
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaScriptでオブジェクトをディープクローンする最も効率的な方法は何ですか?
-
[解決済み] リフレクションとは何か、なぜ有用なのか?
-
[解決済み] JSONPとは何か、なぜ作られたのか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
fetch ネットワークリクエストラッパーの説明例
-
jsを使った簡単な照明スイッチのコード
-
HTML+CSS+JavaScriptで簡単な三目並べゲームを作成する。
-
Vueにシンプルなメモ帳機能を実装
-
vueはopenlayersを使用してスカイマップとガオードマップをロードする
-
[解決済み】"フォームが接続されていないため、フォームの送信がキャンセルされました "というエラーの取得について
-
[解決済み】Node.jsで "Cannot find module "エラーを解決するには?
-
[解決済み] 期待される代入または関数呼び出し: 未使用式なし ReactJS
-
JavaScriptのStringに関する共通メソッド
-
フロントエンド非同期(アシンク)ソリューション(全ソリューション)