⊗jsSpDtIPCh 293 of 294 menu

JavaScript-də id-ə görə bir xassənin dəyişdirilməsi

Bütün obyekti deyil, konkret bir xassəni dəyişdirmək lazım gələ bilər. Gəlin bunun necə edildiyinə baxaq.

Tutaq ki, arr dəyişənində obyektlər massivi var:

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

Tutaq ki, dəyişənlərdə elementin id-si, dəyişdiriləcək xassənin adı və xassənin yeni dəyəri saxlanılır:

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

Məsələni həll etmək üçün destrukturlaşdırma və hesablanan xassə adlarından istifadə etmək rahatdır:

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

Aşağıdakı dəyişənlər verilmişdir:

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

Elə bir düymə hazırlayın ki, klikləndikdə göstərilən id-li massiv elementi götürülsün, onda göstərilən adlı xassə götürülsün və həmin xassənin dəyərinin sonuna '!' işarəsi əlavə olunsun.

Tutaq ki, xassə adları ilə iki dəyişən verilmişdir:

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

Əvvəlki məsələni elə dəyişin ki, kliklədikdə dəyişikliklər dərhal iki göstərilən xassə üçün yerinə yetirilsin.

Nəzəriyyədə verilmiş həlli Object.assign köməyi ilə obyektin kopyalanması vasitəsilə yenidən qurun.

Azərbaycan
AfrikaansБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
Biz saytin işi, analitika və fərdiləşdirmə üçün cookie istifadə edirik. Məlumatların emalı Məxfilik Siyasəti əsasında həyata keçirilir.
hamısını qəbul et konfiqurasiya et rədd et