解説
「ラムダ式」(lambda expression)は、「関数名のない関数」(無名関数や匿名関数と呼ぶ)を短く書くための記法です。
「引数、矢印(=>、->)、処理」の形式が多く、処理の途中に関数を埋め込むのに適しています。関数を引数に取るような処理の場合に、ラムダ式を使うとすっきりと書くことができます。
ラムダ式は、短く簡潔にプログラムを書ける反面、省略が多くて初心者には意味を読み取りにくい難しさもあります。
ラムダ式は、もともと関数型言語と呼ばれるプログラミング言語で見られたものですが、近年多くのメジャーなプログラミング言語で採用されており、触れる機会が増えました。
これから先のプログラムでは、避けて通れない記法になっています。
サンプル
「ラムダ式」のサンプルです。
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>「ラムダ式」のサンプル</title> <style> #output { font-size: 32px; line-height: 1.5; } </style> </head> <body> <pre id="output"></pre> <script> window.addEventListener('DOMContentLoaded', e => { // 出力用の関数 const print = function() { const el = document.querySelector('#output'); el.textContent += Array.from(arguments).join(' ---> ') + '\n' }; print('# 奇数の配列を作る1 ふつうの関数'); function isOdd(x) { if (x % 2 == 1) { return true; } return false; } const odd1 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] .filter(isOdd); print(odd1); print(''); print('# 奇数の配列を作る2 ラムダ式'); const odd2 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] .filter(x => x % 2 == 1); print(odd2); }); </script> </body> </html>
# 奇数の配列を作る1 ふつうの関数 1,3,5,7,9 # 奇数の配列を作る2 ラムダ式 1,3,5,7,9