Einführung
In diesem Lab werden wir untersuchen, wie man Elemente von Arrays anhand ihrer Position gruppiert und mit einer Funktion kombiniert. Wir werden die zipWith-Funktion verwenden, um dies zu erreichen, die ein Array von Elementen erstellt, die anhand ihrer Position in den ursprünglichen Arrays gruppiert sind. Die zipWith-Funktion kann sehr nützlich sein, wenn man mit Arrays unterschiedlicher Länge arbeitet, und wir werden sehen, wie man sie verwendet, um solche Szenarien zu behandeln.
JavaScript-Funktion zum Gruppieren von Array-Elementen
Um Elemente in Arrays zu gruppieren, kannst du die zipWith-Funktion verwenden.
So funktioniert es:
- Die Funktion nimmt eine unbegrenzte Anzahl von Arrays als Argumente entgegen.
- Sie überprüft, ob das letzte Argument eine Funktion ist.
- Sie verwendet
Math.max(), um die Länge des längsten Arrays zu ermitteln. - Sie erstellt ein neues Array von gruppierten Elementen mit
Array.from()und einer Mapping-Funktion. - Wenn die Längen der Argument-Arrays unterschiedlich sind, wird
undefinedverwendet, wo kein Wert gefunden werden konnte. - Die Funktion wird mit den Elementen jeder Gruppe aufgerufen.
Hier ist ein Beispiel für die Verwendung der zipWith-Funktion:
zipWith([1, 2], [10, 20], [100, 200], (a, b, c) => a + b + c); // [111, 222]
zipWith(
[1, 2, 3],
[10, 20],
[100, 200],
(a, b, c) =>
(a != null ? a : "a") + (b != null ? b : "b") + (c != null ? c : "c")
); // [111, 222, '3bc']
Um die zipWith-Funktion zu verwenden, öffne das Terminal/SSH und tippe node.
Zusammenfassung
Herzlichen Glückwunsch! Du hast das Lab "Gruppieren von Array-Elementen basierend auf einer Funktion" abgeschlossen. Du kannst in LabEx weitere Labs ausprobieren, um deine Fähigkeiten zu verbessern.