array.reduce (обратный вызов [, InitialValue]).
Callback = функция, выполняемая для каждого значения массива, имеющая 4 аргумента.
1) previousValue = значение, возвращаемое в предыдущем обратном вызове, или значение, указанное с уменьшением.
2) currentValue = значение от текущего элемента массива.
3) currentIndex = индекс текущего элемента в массиве.
4) array = массив, на который он вызывается
initialValue не является обязательным, и дает нашему предыдущему значению начальное значение в первом обратном вызове.
Итак, у вас есть аргументы. начальное значение (являющееся результатом предыдущего обратного вызова), фактическое число, индекс номера и массив чисел.
EDIT: если вы не укажете начальное значение, ваше предыдущее значение будет первым элементом массива, а ваше текущее значение - вторым.
EDIT 2: Ваше предыдущее значение в вашем первом прогоне будет 65, а ваше текущее значение будет 44. Они складываются, дают результат, который составляет 109, и дают это как результат. Функция вызывается до тех пор, пока вы не закончите свой массив. Таким образом, это означает, что возвращаемое значение вашего первого обратного вызова (109) будет предыдущим значением вашего второго обратного вызова. Снова он добавит предыдущий (109) и текущий, являющийся следующим (третьим) элементом в вашем массиве. Они добавляют их (109 + 12) и возвращают значение для следующего обратного вызова и т. Д. До тех пор, пока вы не пройдете весь массив. В конце он просто возвращает вам итог.