⊗jsSpDtIECh 292 of 294 menu

Ändern eines Elements anhand der ID in JavaScript

Nehmen wir an, in der Variable arr liegt ein Array von Objekten:

let arr = [ { id: 'GYi9GauC4gBF1e2SixDvu', prop1: 'value11', prop2: 'value12', prop3: 'value13', }, { id: 'IWSpfBPSV3SXgRF87uO74', prop1: 'value21', prop2: 'value22', prop3: 'value23', }, { id: 'JAmjRlfQT8rLTm5tG2m1L', prop1: 'value31', prop2: 'value32', prop3: 'value33', }, ];

Nehmen wir an, wir möchten ein Element des Arrays ändern. Nehmen wir an, die neuen Daten sind in einer Variable gespeichert, zum Beispiel so:

let data = { id: 'IWSpfBPSV3SXgRF87uO74', prop1: 'value21 !', prop2: 'value22 !', prop3: 'value23 !', };

Im angegebenen Objekt id stimmt mit der id des zweiten Elements des Arrays überein, aber die Werte der Eigenschaften sind anders. Mit anderen Worten, in data ist in der Eigenschaft id die id des Array-Elements gespeichert, das wir ändern möchten.

Lassen Sie uns diese Änderung durchführen. Dazu durchlaufen wir die Elemente des Arrays mit einer Schleife und, wenn die id mit der gesuchten übereinstimmt, führen wir den Austausch des Elements durch, und wenn sie nicht übereinstimmt, lassen wir das Element unverändert:

let res = arr.map(elem => { if (elem.id === data.id) { return data; } else { return elem; } });

Der Code kann durch Verwendung des ternären Operators verkürzt werden:

let res = arr.map(elem => elem.id === data.id ? data : elem);

Nehmen wir an, in einer Variable ist die id eines Elements des Arrays gespeichert. Erstellen Sie einen Button, bei dessen Klick das entsprechende Element des Arrays geändert wird.

Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen