есть массив
let a = [1, 2, 3, 4];
При помощи метода reduce находим максимальное значение
let c = a.reduce((sum, current) => sum < current ? current : sum);
Как я понял, в теле стрелочной функции записано условие, что если следующий элемент массива больше суммы предыдущих элементов, то этот следующий элемент возвращается и записывается в sum, если меньше, то sum остается.
Вопрос: Правильно ли я понял логику данного метода и зачем в sum записывать current, если current больше sum?