المجموع باستعمال المُنغلِقات
اكتب الدالة sum
لتعمل هكذا: sum(a)(b) = a+b
.
نعم هكذا تمامًا باستعمال قوسين اثنين (ليست خطأً مطبعيًا).
مثال:
sum(1)(2) = 3
sum(5)(-1) = 4
ليعمل القوسين الثانيين، يجب أن يُعيد الأوليين دالة.
هكذا:
function sum(a) {
return function(b) {
return a + b; // takes "a" from the outer lexical environment
};
}
alert( sum(1)(2) ); // 3
alert( sum(5)(-1) ); // 4