JavaScript'te id'ye Göre Öğeyi Değiştirme
Değişkende arr bir nesne dizisi
olsun:
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',
},
];
Diyelim ki dizinin herhangi bir öğesini değiştirmek istiyoruz. Yeni veriler bir değişkende saklansın, örneğin şöyle:
javascriptlet data = {
id: 'IWSpfBPSV3SXgRF87uO74',
prop1: 'value21 !',
prop2: 'value22 !',
prop3: 'value23 !',
};
Verilen nesnede id, dizinin ikinci
elemanının id'si ile eşleşiyor, ancak
özellik değerleri farklı. Başka bir deyişle,
data'nın id özelliğinde, değiştirmek
istediğimiz dizi elemanının id'si
saklanıyor.
Bu değişikliği gerçekleştirelim. Bunun için
dizi elemanlarını bir döngü ile gezelim
ve eğer id arananla eşleşirse, elemanı
değiştirelim, eşleşmezse, elemanı olduğu
gibi bırakalım:
javascriptlet res = arr.map(elem => {
if (elem.id === data.id) {
return data;
} else {
return elem;
}
});
Kodu, üçlü operatörü kullanarak kısaltabiliriz:
javascriptlet res = arr.map(elem => elem.id === data.id ? data : elem);
Задание 1
Değişkende bir dizi elemanının id'si
saklansın. Tıklandığında ilgili dizi elemanının
değiştirileceği bir düğme yapın.