Einführung
In diesem Lab werden wir untersuchen, wie man mithilfe von JavaScript die symmetrische Differenz zwischen zwei Arrays anhand einer bereitgestellten Funktion findet. Wir werden die Methoden Array.prototype.filter() und Array.prototype.findIndex() verwenden, um die Elemente der beiden Arrays zu vergleichen und die Werte zurückzugeben, die für jedes Array einzigartig sind. Am Ende dieses Labs werden Sie ein besseres Verständnis dafür haben, wie diese Methoden verwendet werden, um Arrays in JavaScript zu vergleichen und zu manipulieren.
Eine Funktion zur Suche nach der symmetrischen Differenz von Arrays
Um die symmetrische Differenz zwischen zwei Arrays mithilfe einer bereitgestellten Funktion als Vergleichsmethode zu finden, folgen Sie diesen Schritten:
- Öffnen Sie die Konsole/SSH und geben Sie
nodeein, um mit der Programmierung zu beginnen. - Verwenden Sie die Methoden
Array.prototype.filter()undArray.prototype.findIndex(), um die passenden Werte zu finden. - Verwenden Sie den bereitgestellten Code, um die Operation durchzuführen.
const symmetricDifferenceWith = (arr, val, comp) => [
...arr.filter((a) => val.findIndex((b) => comp(a, b)) === -1),
...val.filter((a) => arr.findIndex((b) => comp(a, b)) === -1)
];
Beispielsweise betrachten Sie die folgende Eingabe:
symmetricDifferenceWith(
[1, 1.2, 1.5, 3, 0],
[1.9, 3, 0, 3.9],
(a, b) => Math.round(a) === Math.round(b)
); // [1, 1.2, 3.9]
Der obige Code wird [1, 1.2, 3.9] als symmetrische Differenz zwischen den beiden Arrays zurückgeben.
Zusammenfassung
Herzlichen Glückwunsch! Sie haben das Lab zu der symmetrischen Differenz von Arrays basierend auf einer Funktion abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.