【らむだしき】
ラムダ式 とは?
最終更新:
💡 小さな処理を、その場で書いて渡そう
関数の処理を、関数名を宣言せず式として書く構文。PythonのlambdaやJavaのラムダ式などがあり、JavaScriptではアロー関数を同様の用途に使える。細かな規則は言語ごとに異なる。
📌 このページのポイント
- 関数を引数として渡すときなどに、その場で処理を書ける
- 変数に保存して繰り返し使うこともでき、使い捨て専用ではない
- Pythonのlambdaの本体は一つの式。JavaやJavaScriptではブロックも書ける
- JavaScriptのアロー関数は、通常のfunctionとはthisなどの扱いが異なる
普通の関数と何が違うの?
一度使ったらなくなる関数なの?
使い捨て専用ではないよ。作った関数を変数に保存して、何度も呼ぶこともできるんだ。処理が長くなったり、何をするか名前で説明したくなったりしたら、通常の関数定義を選ぶと読みやすいね
どの言語でも、一行だけで書くの?
Pythonのlambdaは本体を一つの式に限るよ。Javaのラムダ式やJavaScriptのアロー関数は、複数の文を含むブロックも書ける。ラムダ式なら必ず一行というわけではなく、言語ごとの構文を確認しよう
JavaScriptなら全部アロー関数に替えていい?
使いどころの簡単な例がほしい!
JavaScriptなら[1, 2, 3].map(x => x * 2)で[2, 4, 6]を得られるよ。配列の各要素をどう変えるか、その処理を関数として渡しているんだ。短くすることだけでなく、処理の意図が読み取れるかも大切だね
まとめ:ざっくりこれだけ覚えればOK!
「ラムダ式」って出てきたら「その場で関数の処理を書ける式」と思えばだいたいOK!
📖 おまけ:英語の意味
「Lambda Expression」 = ラムダ式
💬 lambdaや矢印など、書き方は言語ごとに違うよ。関数名を宣言せずに処理を書くという、プログラミングでの使い方をまず覚えよう