BFE.devでのAI解答例 - JavaScript コーディング問題
23. sum()を実装する
function sum(num1) { return function(num2) { if (num2) { return sum(num1 + num2); } else { return num1; } }}
これはクロージャを使って実装された解答例です。sum
を呼び出すたびに、新しい関数が返されます。最初のsum
呼び出しでは、最初の数字が渡されます。返される関数は(num2)
引数で呼び出されるたびに新しいnum1値が加算されます。引数がない場合、答えを返します。