Viena īpašības maiņa pēc id JavaScript
Jums var būt nepieciešams mainīt ne visu objektu, bet konkrētu īpašību. Apskatīsim, kā tas tiek darīts.
Lai mainīgajā arr atrodas
objektu masīvs:
javascriptlet 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',
},
];
Lai mainīgajos tiek glabāti elementa id,
maināmās īpašības nosaukums un īpašības jaunā vērtība:
javascriptlet id = 'IWSpfBPSV3SXgRF87uO74';
let prop = 'prop1';
let value = '!!!';
Lai atrisinātu uzdevumu, ir ērti izmantot destruktūrizāciju un aprēķināmos īpašību nosaukumus:
javascriptlet res = arr.map(elem => {
if (elem.id === id) {
return {...elem, [prop]: value};
} else {
return elem;
}
});
Doti šādi mainīgie:
javascriptlet id = 'JAmjRlfQT8rLTm5tG2m1L';
let prop = 'prop2';
Izveidojiet pogu, kuras nospiešanas brīdī tiks
paņemts masīva elements ar norādīto id,
tajā tiks paņemta īpašība ar norādīto
nosaukumu un šīs īpašības vērtības
beigās tiks pievienota zīme '!'.
Lai doti divi mainīgie ar īpašību nosaukumiem:
javascriptlet id = 'JAmjRlfQT8rLTm5tG2m1L';
let prop1 = 'prop2';
let prop2 = 'prop3';
Modificējiet iepriekšējo uzdevumu tā, lai ar klikšķi izmaiņas tiktu veiktas uzreiz divām norādītajām īpašībām.
Pārveidojiet teorijā doto risinājumu
izmantojot objekta kopēšanu ar Object.assign.