Параметры возвращаемой функции в JavaScript

В изученные нами вызовы функций можно передавать параметры. В следующем примере внутренняя функция ожидает параметром строку и выводит ее в консоль:

javascriptfunction func() {
  return function(str) {
    return str;
  };
}

Внутренней функции соответствует вторая скобка при вызове, значит в эту вторую скобку и передаем желаемую строку:

javascriptfunction func() {
  return function(str) {
    return str;
  };
}

console.log( func()('!') ); // выведет '!'

Давайте сделаем так, чтобы и первая функция принимала параметр, и вторая. А результатом вызова сделаем сумму этих параметров:

javascriptfunction func(num1) {
  return function(num2) {
    return num1 + num2;
  };
}

console.log( func(1)(2) ); // выведет 3
Задание 1

Сделайте функцию func, которая будучи вызвана вот так: func(2)(3)(4), вернет сумму переданных в параметры чисел.

Задание 2

Сделайте функцию func, которая будучи вызвана вот так: func(2)(3)(4)(5)(), вернет массив переданных в параметры чисел.