Objekte aus JavaScript-Arrays entfernen
Das Entfernen von Objekten aus Arrays ist ein häufiger Vorgang in JavaScript. Es gibt mehrere Methoden, um dies zu erreichen, jede mit ihren eigenen Vor- und Nachteilen.
Nicht mutierende Methoden
-
Array.filter(): Erstellt ein neues Array, das nur die Elemente enthält, die einen angegebenen Test bestehen. Zum Beispiel:
let someArray = [{name: "Kristian", lines: "2,5,10"},
{name: "John", lines: "1,19,26,96"}];
let noJohn = someArray.filter(el => el.name !== "John");
Nach dem Login kopieren
-
Array.find(): Gibt das erste passende Element zurück oder undefiniert, wenn keine Übereinstimmung gefunden wird. Verwenden Sie diese Option, um das spezifische Objekt abzurufen, das Sie entfernen möchten. Zum Beispiel:
const kristian = someArray.find(el => el.name === "Kristian");
Nach dem Login kopieren
Mutating Methods
-
Array.splice(): Entfernt eine Reihe von Elementen aus Das Array, beginnend bei einem angegebenen Index. Zum Beispiel:
someArray.splice(someArray.findIndex(el => el.name === "John"), 1);
Nach dem Login kopieren
-
Array.pop():Entfernt das letzte Element aus dem Array.
-
Array.shift ():Entfernt das erste Element aus dem Array.
-
Array.length = newLength: Weist die Länge des Arrays neu zu und schneidet alle überschüssigen Elemente ab.
Auswahl der besten Methode
Die beste Methode zum Entfernen von Objekten aus einem Das Array hängt von Ihren spezifischen Anforderungen ab:
-
Nicht mutierende Methoden erstellen neue Arrays und haben keinen Einfluss auf das ursprüngliche Array. Dies ist ideal, wenn Sie das ursprüngliche Array intakt halten möchten.
-
Mutierungsmethoden verändern direkt das ursprüngliche Array. Dies ist effizienter, kann aber zu unerwünschten Änderungen führen.
Zusätzliche Hinweise
-
Array.findIndex(): Verwendung Hiermit finden Sie den Index des Objekts, das Sie entfernen möchten, da splice() und pop() einen Index erfordern Parameter.
-
Array.filter(): Kann verwendet werden, um mehrere Elemente gleichzeitig zu entfernen, indem mehrere Kriterien in der Filterfunktion angegeben werden.
Beispiel
Der folgende Code verwendet die filter()-Methode, um ein neues Array zu erstellen, ohne dass das Objekt den Namen enthält „Kristian“:
const someArray = [{name: "Kristian", lines: "2,5,10"},
{name: "John", lines: "1,19,26,96"}];
const noKristian = someArray.filter(el => el.name !== "Kristian");
console.log(noKristian);
// Output: [{name: "John", lines: "1,19,26,96"}]
Nach dem Login kopieren
Das obige ist der detaillierte Inhalt vonWie entferne ich Objekte effizient aus JavaScript-Arrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!