Wird sich das Sortieren und Filtern die Originalreihenfolge ändern?
Für die sort()-Methode lautet die Antwort Ja
, aber für die filter()-Methode lautet die Antwort Nein
.
Lassen Sie mich dies anhand eines Beispiels erklären :
// Ursprüngliches Array
const arr = [5, 4, 3, 2, 1];
// Werte des Arrays sortieren und in einer Variable zuweisen.
const sortedArr = arr.sort((a, b) => a-b);
// Ursprüngliches Array geändert.
console.log(arr); // [1,2,3,4,5]
// Neue Variable mit sortiertem Array.
console.log(sortedArr); // [1,2,3,4,5]
Um zu verhindern, dass das Ursprüngliche Array geändert wird, können wir to[Operation]
verwenden, das eine neue Sammlung mit der angewendeten Operation zurückgibt (Dies befindet sich derzeit in Phase 3 und wird bald verfügbar sein).
const arr = [5, 4, 3, 2, 1];
const sortedArr = arr.toSort((a, b) => a-b);
console.log(arr); // [5, 4, 3, 2, 1]
console.log(sortedArr); // [1, 2, 3, 4, 5]