Используйте оператор Rest с параметрами функции
Чтобы помочь нам создать более гибкие функции, ES6 вводит оператор rest для параметров функции. С оператором rest вы можете создавать функции, которые принимают переменное количество аргументов. Эти аргументы хранятся в массиве, доступ к которому можно получить позже изнутри функции. Проверьте этот код:
function howMany(...args) {
return "You have passed " + args.length + " arguments.";
}
console.log(howMany(0, 1, 2));
console.log(howMany("string", null, [1, 2, 3], { }));
Оператор rest исключает необходимость проверки массива args
и позволяет применять map()
, filter()
и reduce()
в массиве параметров.
Замечание: На самом деле это сильно похоже на магическую переменную arguments. Но arguments не существует внутри стрелочных функций, а вот ...args будет работать и в них.
Измените функцию sum
так, чтобы она использовала оператор rest
и работала одинаково с любым количеством параметров.