Answer

Answer

t.me/js_test

Ответ:

const sum = num => {
 let result = num;

 const internalSum = num1 => {
  if (num1||num1===0) {
   result += num1;
   return internalSum;
  }
  return result;
 }
 return internalSum;
}

Обьяснение:

При первом вызове функции sumмы создаём переменную result , в которую записываем значение num. Функция sum возвращает вложенную функцию internalSum, поведение которой зависит от входящего параметра: если параметр num1 отсутствует - она возвращает result, в другом случае она добавляет к result значение num1 и возвращает себя же.

Код для проверки:

const sum = num => {
 let result = num;

 const internalSum = num1 => {
 if (num1||num1===0) {
  result += num1;
  return internalSum;
 }
 return result;
 }
 return internalSum;
}

sum(10)(20)(30)(); // 60
sum(-5)(0)(); // -5


Report Page