⊗jsSpDtIPCh 293 of 294 menu

Eén eigenschap wijzigen op id in JavaScript

Het kan zijn dat u niet het hele object wilt wijzigen, maar alleen een specifieke eigenschap. Laten we kijken hoe dat wordt gedaan.

Stel dat in de variabele arr een array van objecten ligt:

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', }, ];

Stel dat in variabelen het id van het element, de naam van de te wijzigen eigenschap en de nieuwe waarde van de eigenschap zijn opgeslagen:

let id = 'IWSpfBPSV3SXgRF87uO74'; let prop = 'prop1'; let value = '!!!';

Voor het oplossen van deze taak is het handig om destructuring en berekende eigenschapsnamen te gebruiken:

let res = arr.map(elem => { if (elem.id === id) { return {...elem, [prop]: value}; } else { return elem; } });

De volgende variabelen zijn gegeven:

let id = 'JAmjRlfQT8rLTm5tG2m1L'; let prop = 'prop2';

Maak een knop waarop, wanneer erop wordt geklikt, het element uit de array met het opgegeven id wordt genomen, daarin de eigenschap met de opgegeven naam wordt genomen en aan het einde van de waarde van deze eigenschap het teken '!' wordt toegevoegd.

Stel dat twee variabelen met eigenschapsnamen zijn gegeven:

let id = 'JAmjRlfQT8rLTm5tG2m1L'; let prop1 = 'prop2'; let prop2 = 'prop3';

Pas de vorige taak zo aan dat er bij een klik wijzigingen worden uitgevoerd voor beide opgegeven eigenschappen.

Pas de oplossing uit de theorie aan door het object te kopiëren met Object.assign.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren