Обязательный initialValue при [].reduce
Всегда ставлю initialValue при [].reduce:
[0, 1, 2, 3].reduce((sum, item) => sum + item, 0);
Если забить, то при пустом массиве будет ошибка
[].reduce((sum, item) => sum + item);
// TypeError: Reduce of empty array with no initial value
Про момент с пустым массивом легко забыть и напороться на баг. Лучше сразу ставить защиту.
![Защищайтесь!](https://firebasestorage.googleapis.com/v0/b/bezuglyru.appspot.com/o/dart-2.jpeg?alt=media&token=0538a6cb-5436-4b63-b1d8-39d5184c2899)