Heim >Web-Frontend >js-Tutorial >Wie finde und ersetze ich ein Objekt in einem JavaScript-Array basierend auf einer bestimmten Eigenschaft?

Wie finde und ersetze ich ein Objekt in einem JavaScript-Array basierend auf einer bestimmten Eigenschaft?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-28 14:26:12305Durchsuche

How to Find and Replace an Object in a JavaScript Array Based on a Specific Property?

Ein Objekt mit einer bestimmten Eigenschaft in einem Array von Objekten finden

In Javascript kann ein Array unbenannter Objekte nach einem bestimmten Objekt durchsucht werden Objekt basierend auf einer Eigenschaft-Wert-Übereinstimmung. Betrachten Sie das folgende Array:

var array = [
    { name:"string 1", value:"this", other: "that" },
    { name:"string 2", value:"this", other: "that" }
];

Suchen des Objekts:

Um das Objekt zu finden, dessen Eigenschaft „name“ auf „string 1“ gesetzt ist, verwenden Sie die Funktion „Suchen“. ()-Methode. Die Syntax lautet:

let obj = arr.find(o => o.name === 'string 1');

Dieser Code durchläuft das Array und gibt das erste Objekt zurück, bei dem die Bedingung o.name === 'string 1' wahr ist. Das resultierende Objekt würde die folgenden Daten enthalten:

{ name:"string 1", value:"this", other: "that" }

Ersetzen des gefundenen Objekts:

Sobald das Objekt gefunden wurde, kann es durch eine bearbeitete Version ersetzt werden. Verwenden Sie dazu die Methode findIndex(), um den Index des Objekts innerhalb des Arrays abzurufen:

let index = array.findIndex(o => o.name === 'string 1');

Dann verwenden Sie die Methode splice() des Arrays, um das Objekt an diesem Index zu ersetzen:

array.splice(index, 1, { new_name: "string 1", new_value: "updated" });

Jetzt enthält das Array das aktualisierte Objekt:

[
    { name:"string 1", value:"updated", other: "that" },
    { name:"string 2", value:"this", other: "that" }
]

Das obige ist der detaillierte Inhalt vonWie finde und ersetze ich ein Objekt in einem JavaScript-Array basierend auf einer bestimmten Eigenschaft?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Meine Reaktionsreise: Tag 7Nächster Artikel:Meine Reaktionsreise: Tag 7