- Katılım
- 6 Kas 2021
- Mesajlar
- 4,290
- Tepkime puanı
- 5,669
- Puanları
- 113
- Yaş
- 32
- Konum
- Türkiye
- Dc
- fatihbulut
Web geliştirme dünyasında JavaScript, en çok kullanılan programlama dillerinden biridir. Bu makalede, JavaScript dizileri üzerinde sıkça kullanılan map() fonksiyonunu detaylı bir şekilde inceleyeceğiz.
map() Fonksiyonu Nedir?
map(), bir dizi üzerinde döngü yaparak her eleman için belirtilen fonksiyonu çalıştırır ve bu fonksiyonun döndürdüğü değerlerden oluşan yeni bir dizi oluşturur. Orijinal diziyi değiştirmez.Temel Sözdizimi
JavaScript:
const yeniDizi = orijinalDizi.map(function(mevcutDeger, indeks, dizi) {
// Dönüşüm işlemi
return yeniDeger;
});
- mevcutDeger: Dizideki mevcut eleman
- indeks (opsiyonel): Elemanın indeksi
- dizi (opsiyonel): Orijinal dizi
Örneklerle map() Kullanımı
Örnek 1: Sayıları 2 Katına Çıkarma
JavaScript:
const sayilar = [1, 2, 3, 4, 5];
const ikiKat = sayilar.map(function(sayi) {
return sayi * 2;
});
console.log(ikiKat); // [2, 4, 6, 8, 10]
Örnek 2: Arrow Function ile Kullanım
JavaScript:
const sayilar = [1, 2, 3];
const kareler = sayilar.map(sayi => sayi * sayi);
console.log(kareler); // [1, 4, 9]
Örnek 3: Nesne Dizilerini Dönüştürme
JavaScript:
const kisiler = [
{ ad: "Ahmet", yas: 25 },
{ ad: "Mehmet", yas: 30 },
{ ad: "Ayşe", yas: 28 }
];
const isimler = kisiler.map(kisi => kisi.ad);
console.log(isimler); // ["Ahmet", "Mehmet", "Ayşe"]
map() Fonksiyonunun Avantajları
- Kod Okunabilirliği: Geleneksel for döngülerine göre daha temiz ve anlaşılır bir yapı sunar.
- Fonksiyonel Programlama: Fonksiyonel programlama yaklaşımına uygundur.
- Yeni Dizi Oluşturma: Orijinal diziyi değiştirmez, bu da veri bütünlüğünü korur.
- Zincirleme Kullanım: Diğer dizi fonksiyonlarıyla (filter, reduce gibi) zincirleme kullanılabilir.
Dikkat Edilmesi Gerekenler
- map() her zaman yeni bir dizi döndürür.
- Geri çağırma fonksiyonunda return ifadesi unutulmamalıdır, yoksa yeni dizi undefined değerlerle dolar.
- Büyük veri setlerinde performans etkisi olabilir.
Gerçek Dünya Uygulaması: API Yanıtını İşleme
JavaScript:
// API'den gelen veri
const apiYaniti = [
{ id: 1, name: "Ürün A", price: 100 },
{ id: 2, name: "Ürün B", price: 200 },
{ id: 3, name: "Ürün C", price: 150 }
];
// Sadece ihtiyacımız olan verileri çekme
const urunListesi = apiYaniti.map(urun => ({
id: urun.id,
name: urun.name,
fiyat: `${urun.price} TL`
}));
console.log(urunListesi);
/*
[
{ id: 1, name: "Ürün A", fiyat: "100 TL" },
{ id: 2, name: "Ürün B", fiyat: "200 TL" },
{ id: 3, name: "Ürün C", fiyat: "150 TL" }
]
*/
Sonuç
map() fonksiyonu, JavaScript'te dizi işlemleri yaparken oldukça kullanışlı bir araçtır. Veri dönüşümleri, API yanıtlarını işleme, kullanıcı arayüzü oluşturma gibi birçok senaryoda kullanılabilir. Fonksiyonel programlama yaklaşımını benimseyen geliştiriciler için vazgeçilmez bir yöntemdir.Alıştırmalar
- Bir dizi string'i büyük harfe çeviren bir map() işlemi yazın.
- Bir nesne dizisindeki belirli bir özelliği çıkararak yeni bir dizi oluşturun.
- map() ve filter() fonksiyonlarını birlikte kullanarak belirli bir koşulu sağlayan elemanları dönüştürün.
