javascript / intermediate
Snippet
Funktionale Pipe-Komposition
Pipe-Komposition ist ein funktionales Muster, bei dem die Ausgabe einer Funktion zur Eingabe der nächsten wird. Es ermöglicht den Aufbau komplexer Logik durch das Kombinieren einfacher, wiederverwendbarer Funktionen in einem lesbaren Fluss von oben nach unten.
snippet.js
1
2
3
4
5
6
7
8
const pipe = (...fns) => (x) => fns.reduce((v, f) => f(v), x);const getName = (person) => person.name;const uppercase = (str) => str.toUpperCase();const getGreeting = (name) => `Hello, ${name}!`;const welcomeMessage = pipe(getName, uppercase, getGreeting);console.log(welcomeMessage({ name: 'Markus' }));
Erklärung
1
const pipe = (...fns)
Verwendet die Rest-Parameter-Syntax, um eine beliebige Anzahl von Funktionen in einem Array namens 'fns' zu sammeln.
2
fns.reduce((v, f) => f(v), x)
Iteriert durch die Funktionen und wendet jede auf das Ergebnis der vorherigen an, beginnend mit dem Initialwert 'x'.