Ми хочемо зробити цей проєкт з відкритим кодом доступним для людей у всьому світі.

Допоможіть перекласти цей підручник вашою мовою!

назад до уроку

Сума із замиканням

важливість: 4

Напишіть функцію sum яка працює ось так: sum(a)(b) = a+b.

Саме так, використовуючи подвійні дужки (це не друкарська помилка).

Наприклад:

sum(1)(2) = 3 sum(5)(-1) = 4

Щоб другі дужки працювали, функція повинна повертати іншу функцію.

Ось так:

function sum(a) { return function(b) { return a + b; // Бере "a" із зовнішнього лексичного середовища }; } alert( sum(1)(2) ); // 3 alert( sum(5)(-1) ); // 4