Agreguje elementy w tablicy przy użyciu niestandardowego agregatora. Ta funkcja jest synonimem funkcji agregującej.
Składnia
reduce(expr, start, merge [, finish] )
Argumenty
expr: wyrażenie ARRAY .
start: początkowa wartość dowolnego typu.
merge: funkcja lambda używana do agregowania bieżącego elementu.
finish: opcjonalna funkcja lambda używana do finalizowania agregacji.
Zwraca
Typ wyniku jest zgodny z typem finish wyniku funkcji lambda, jeśli istnieje lub start.
Stosuje wyrażenie do stanu początkowego i wszystkich elementów tablicy i zmniejsza je do jednego stanu. Stan końcowy jest konwertowany na końcowy wynik przez zastosowanie finish funkcji.
Funkcja merge przyjmuje dwa parameters. Pierwszy to akumulator, a drugi to element, który ma zostać zagregowany.
Akumulator i wynik musi być typu start.
Funkcja opcjonalna finish przyjmuje jeden parametr i zwraca wynik końcowy.