⊗jsSpDtIPCh 293 of 294 menu

JavaScript да id орқали бир хусусиятни ўзгартириш

Сизга объектнинг ўзини эмас, балки маълум бир хусусиятини ўзгартириш талаб этилиши мумкин. Буни қандай бажаришни кўрамиз.

Фарз қилайлик, arr ўзгарувчисида объектлар массиви мавжуд:

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

Фарз қилайлик, ўзгарувчиларда элементнинг id си, ўзгартириладиган хусусиятнинг номи ва хусусиятнинг янги қиймати сақланган:

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

Масалани ечиш учун деструктуризация ва ҳисобланадиган хусусият номлари дан фойдаланиш қулай:

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

Қуйидаги ўзгарувчилар берилган:

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

Тугма яратинг, уни босганда кўрсатилган id га эга бўлган массив элементи олиниб, унда кўрсатилган номдаги хусусият олинади ва шу хусусият қийматининг охирига '!' белгиси қўшилади.

Фарз қилайлик, иккита хусусият номи билан иккита ўзгарувчи берилган:

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

Олдинги масалани шундай модификация қилингки, бир марта клик қилганда ўзгартириш ишлари иккита кўрсатилган хусусият учун бирданинг бажарилсин.

Назарияда келтирилган ечимни Object.assign ёрдамида объектни нусхалаш орқали қайта ташкил қилинг.

Ўзбек
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeOʻzbekTiếng Việt
Биз веб-сайт ишлаши, таҳлил қилиш ва персоналлаштириш учун кукидан фойдаланамиз. Маълумотларни қайта ишлаш Махфийлик сиёсатига мувофиқ амалга оширилади.
ҳаммасини қабул қилиш мослаштириш рад этиш