en.javascript.info/1-js/6-objects-more/6-call-apply/1-rewrite-sum-arguments/task.md
2015-01-14 10:23:45 +03:00

1,004 B

Перепишите суммирование аргументов

[importance 5]

Есть функция sum, которая суммирует все элементы массива:

//+ run
function sum(arr) {
  return arr.reduce(function(a, b) { return a + b; });
}

alert( sum([1,2,3]) ); // 6 (=1+2+3)

Создайте аналогичную функцию sumArgs(), которая будет суммировать все свои аргументы:

function sumArgs() {
  /* ваш код */
}

alert( sumArgs(1,2,3) ); // 6, аргументы переданы через запятую, без массива

Для решения примените метод reduce к arguments, используя call, apply или одалживание метода.

P.S. Функция sum вам не понадобится, она приведена в качестве примера использования reduce для похожей задачи.