ელემენტის id-ით შეცვლა JavaScript-ში
დაე, ცვლადში 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',
},
];
დაე, ჩვენ გვინდა შევცვალოთ რაიმე ელემენტი მასივის. დაე, ახალი მონაცემები ინახებოდეს ცვლადში, მაგალითად, ასეთი:
let data = {
id: 'IWSpfBPSV3SXgRF87uO74',
prop1: 'value21 !',
prop2: 'value22 !',
prop3: 'value23 !',
};
მოცემულ ობიექტში id ემთხვევა
მასივის მეორე ელემენტის id-ს, ხოლო თვისებების
მნიშვნელობები - სხვა. სხვა სიტყვებით რომ ვთქვათ,
data-ში id თვისებაში ჩვენი მასივის იმ
ელემენტის id ინახება, რომლის
შეცვლაც გვინდა.
მოდით, შევასრულოთ ეს ცვლილება. ამისთვის
ჩვენ მასივის ელემენტებს ციკლით
გადავუვლით და, თუ id ემთხვევა საძიებელს, შევასრულებთ
ელემენტის ჩანაცვლებას, ხოლო თუ არ ემთხვევა, დავტოვებთ
ელემენტს უცვლელად:
let res = arr.map(elem => {
if (elem.id === data.id) {
return data;
} else {
return elem;
}
});
კოდის შემოკლება შესაძლებელია ტერნარული ოპერატორის გამოყენებით:
let res = arr.map(elem => elem.id === data.id ? data : elem);
დაე, ცვლადში ინახება მასივის ელემენტის
id. გააკეთეთ ღილაკი, რომლის დაჭერისას
შეიცვლება მასივის შესაბამისი
ელემენტი.