Einführung
In diesem Lab werden wir untersuchen, wie man mithilfe von JavaScript ein Array anhand von gegebenen Werten in zwei Teilmengen aufteilt. Das Lab zeigt, wie man die Methoden Array.prototype.reduce() und Array.prototype.push() verwendet, um Elemente anhand eines gegebenen Filters zwei Gruppen hinzuzufügen. Am Ende dieses Labs werden Sie ein besseres Verständnis dafür haben, wie man in JavaScript Arrays manipuliert.
Funktion zum Teilen eines Arrays in zwei Gruppen
Um diese Funktion zu verwenden, um ein Array anhand von Werten in zwei Gruppen aufzuteilen, folgen Sie diesen Schritten:
- Öffnen Sie das Terminal/SSH und geben Sie
nodeein, um mit der Codeausführung zu beginnen. - Verwenden Sie die
bifurcate()-Funktion, die die Werte anhand des Ergebnisses des gegebenenfilter-Arrays in zwei Gruppen aufteilt. - Um die Funktion zu implementieren, verwenden Sie
Array.prototype.reduce()undArray.prototype.push(), um Elemente den Gruppen hinzuzufügen, basierend auf demfilter-Array. - Wenn
filterfür irgendein Element einen wahren Wert hat, fügen Sie es der ersten Gruppe hinzu; andernfalls fügen Sie es der zweiten Gruppe hinzu.
Hier ist der Code für die bifurcate()-Funktion:
const bifurcate = (arr, filter) =>
arr.reduce(
(acc, val, i) => (acc[filter[i] ? 0 : 1].push(val), acc),
[[], []]
);
Sie können die bifurcate()-Funktion mit einem Array von Werten und einem entsprechenden Filter-Array aufrufen, um die Werte in zwei Gruppen aufzuteilen. Beispiel:
bifurcate(["beep", "boop", "foo", "bar"], [true, true, false, true]);
// [ ['beep', 'boop', 'bar'], ['foo'] ]
Zusammenfassung
Herzlichen Glückwunsch! Sie haben das Lab "Bifurcate Array Based on Values" abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.