Objelerin harita(Map)'lenmesi
kullanici dizindeki elemanlar adi, soyadi ve id özelliklerine sahiptirler.
Bunlardan özellikleri id, adi_soyadi Åeklinde adi ve soyadi özelliklerinden türeyen adi_soyadi özelliÄine sahip objelerden sahip yeni bir dizi oluÅturunuz.
ÃrneÄin:
let ahmet = { adi: "Ahmet", soyadi: "DoÄtaÅ", id: 1 };
let mehmet = { adi: "Mehmet", soyadi: "İstikbal", id: 2 };
let muzaffer = { adi: "Muzaffer", soyadi: "Bellona", id: 3 };
let kullanicilar = [ ahmet, mehmet, muzaffer ];
let kullaniciMapped = /* ... Sizin kodunuz ... */
/*
kullaniciMapped = [
{ adi_soyadi: "Ahmet DoÄtaÅ", id: 1 },
{ adi_soyadi: "Mehmet İstikbal", id: 2 },
{ adi_soyadi: "Muzaffer Bellona", id: 3 }
]
*/
alert( kullaniciMapped[0].id ) // 1
alert( kullaniciMapped[0].adi_soyadi ) // Ahmet DoÄtaÅ
Burada yapmanız gereken aslında bir dizideki objeleri diÄerine eÅlemek(map etmek). => kullanabilirsiniz.
let ahmet = { adi: "Ahmet", soyadi: "DoÄtaÅ", id: 1 };
let mehmet = { adi: "Mehmet", soyadi: "İstikbal", id: 2 };
let muzaffer = { adi: "Muzaffer", soyadi: "Bellona", id: 3 };
let kullanicilar = [ ahmet, mehmet, muzaffer ];
let kullaniciMapped = kullanicilar.map(kullanici => ({
adi_soyadi: `${kullanici.adi} ${kullanici.soyadi}`,
id: kullanici.id
}));
/*
kullaniciMapped = [
{ adi_soyadi: "Ahmet DoÄtaÅ", id: 1 },
{ adi_soyadi: "Mehmet İstikbal", id: 2 },
{ adi_soyadi: "Muzaffer Bellona", id: 3 }
]
*/
alert( kullaniciMapped[0].id ) // 1
alert( kullaniciMapped[0].adi_soyadi ) // Ahmet DoÄtaÅ
Dikkat ederseniz ok fonksiyonunda süslü parantez kullanmamız gerekti.
AÅaÄıdaki gibi yazılamaz:
let kullaniciMapped = kullanicilar.map(kullanici => {
adi_soyadi: `${kullanici.adi} ${kullanici.soyadi}`,
id: kullanici.id
});
HatırlayacaÄınız üzere iki türlü ok fonksiyonu bulunmaktadır: Gövdesi olmadan deger => ifade veya gövdeli deger => {...}
Bizim kullandıÄımız Åekliyle JavaScript {'i fonksiyon baÅlangıcı olarak kabul etmektedir. Objenin baÅlangıcı deÄil. Halbuki biz obje olmasını istiyoruz. Bu durumda bunları ânormalâ parantez içine almamız gerekmekte.
let kullaniciMapped = kullanicilar.map(kullanici => ({
adi_soyadi: `${kullanici.adi} ${kullanici.soyadi}`,
id: kullanici.id
}));
Åimdi çalıÅır.