Разбираемся как работает array.reduce()



Он принимает колбэк для обработки и инитное значение



[1, 2, 3].reduce((sum, item) => sum + item, 0)



Итерация 1

sum = инитное значение = 0

item = первый элемент = 1

sum + item = 1 - запоминаем



Итерация 2

sum = то что запомнили = 1

item = второй элемент = 2

sum + item = 3 - запоминаем



Итерация 3

sum = то что запомнили = 3

item = третий элемент = 3

sum + item = 6 - запоминаем



элементы закончились возвращаем то что запомнили - 6



таким образом array.reduce((sum, item) => sum + item, 0) - суммирует все элементы массива



в статье пример аналогичного разворачивания массива