Wie man Funktionen in JavaScript zusammensetzt
Um zu beginnen, mit der Programmierung mit Funktionskomposition in JavaScript zu üben, öffnen Sie das Terminal/SSH und geben Sie node
ein.
Hier ist ein Beispiel dafür, wie man eine rechts-links-Funktionskomposition in JavaScript durchführt:
- Verwenden Sie
Array.prototype.reduce()
, um eine rechts-links-Funktionskomposition durchzuführen.
- Die letzte (rechtsmöglichste) Funktion kann einen oder mehrere Argumente akzeptieren; die verbleibenden Funktionen müssen einstellige Funktionen sein.
- Definieren Sie die
compose
-Funktion, die beliebig viele Funktionen als Argumente entgegennimmt und eine neue Funktion zurückgibt, die diese zusammensetzt.
- Rufen Sie die
compose
-Funktion mit den gewünschten Funktionen in der gewünschten Reihenfolge auf.
- Rufen Sie die neue zusammengesetzte Funktion mit allen erforderlichen Argumenten auf.
const compose = (...fns) =>
fns.reduce(
(f, g) =>
(...args) =>
f(g(...args))
);
Nehmen wir beispielsweise an, dass wir zwei Funktionen haben:
const add5 = (x) => x + 5;
const multiply = (x, y) => x * y;
Wir können diese Funktionen mit compose
zusammensetzen:
const multiplyAndAdd5 = compose(add5, multiply);
Jetzt können wir multiplyAndAdd5
mit den gewünschten Argumenten aufrufen:
multiplyAndAdd5(5, 2); // 15