Funkcja reduce może zostac wykonana na liście i przyjmuje dwa argumenty - callback oraz initialValue:
- callbackjest funkcją, która przyjmuje 4 argumenty. Wykonywana jest tyle razy, ile elementów zawiera array.- acc- akumulator - jest to wartość, którą zwrócił- callbackw poprzedniej iteracji
- el- obecny element iteracji
- index- indeks elementu w tablicy
- arr- tablica, na której wykonano funkcję reduce.
 
- initialValue- wartość, która trafi do- callbackujako- accw pierwszej iteracji
reduce zwraca wartość, którą zwróciło ostatnie wykonanie callbacku.
Ma wiele zastosowań, może by przydatna np. do obliczenia sumy:
const numbers = [2, 4, 6]; const sum = numbers.reduce((acc, el) => { return acc + el; }, 0); console.log(sum); // 12
...lub zamiany struktury danych z listy na obiekt:
const objs = [ { id: "1", value: "first" }, { id: "2", value: "second" }, ]; const idKeyed = objs.reduce((acc, el) => { acc[el.id] = el.value; return acc; }, {}); console.log(idKeyed); // {1: 'first', 2: 'second'}

