Ich frage mich, ob und was eine zuverlässige und / oder Standardmethode ist, ein Array zu durchlaufen, dessen Länge sich innerhalb der Schleife ändert. Ich frage, weil ich am Ende jedes Mal eine andere Methode auswähle, um dies zu tun, z. B.
%Vor%oder
%Vor%Dies ist die Art, wie ich mich dabei befinde, aber ich bin neugierig, ob es einen Standardansatz gibt.
Ich finde es einfacher, in die andere Richtung zu iterieren:
%Vor%Auf diese Weise müssen Sie die Schrittweite beim Entfernen nicht ändern.
Viele Entwickler, insbesondere diejenigen, die sich vor JavaScript nicht mit C-ähnlichen Sprachen beschäftigt haben, finden es verwirrend, mit den Feinheiten des Dekrement-Operators umzugehen. Die Schleife, die ich geschrieben habe, kann auch als
geschrieben werden %Vor% Wie auch immer Sie es wählen, das Starten in umgekehrter Reihenfolge und das Herunterzählen ist am einfachsten. Es hängt auch davon ab, ob Ihr Array spärlich ist und ob es sparsam sein soll. Am einfachsten ist es, sich selbst eine wiederverwendbare Funktion und eine eigene Bibliothek zu erstellen. Du könntest das tun. Wenn Sie compress
auf true setzen, wird Ihr Array zu einem kontinuierlichen und nicht zu einem spärlichen Array. Diese Funktion entfernt alle übereinstimmenden Vorkommen des Werts und gibt ein Array der entfernten Elemente zurück.
Javascript
%Vor%Ausgabe
%Vor%Auf jsfiddle
Tags und Links javascript arrays loops