JavaScript Dizi (Array) Fonksiyonları: filter, map, forEach ve Daha Fazlası
JavaScript'te diziler (arrays), verileri depolamak ve işlemek için oldukça yaygın olarak kullanılır. Diziler üzerinde işlem yapmak için birçok güçlü fonksiyon bulunur. Bu yazıda, filter, map, forEach ve diğer dizi fonksiyonlarının nasıl çalıştığını, ne zaman kullanmanız gerektiğini ve aralarındaki farkları SEO uyumlu şekilde açıklıyoruz.
1. filter Fonksiyonu
Amacı: Dizideki elemanları belirli bir koşula göre filtrelemek ve yeni bir dizi döndürmek.
Orijinal Dizi: Değişmez.
Kullanımı:
const numbers = [1, 2, 3, 4, 5];
const evenNumbers = numbers.filter(num => num % 2 === 0);
console.log(evenNumbers); // [2, 4]
Ne Zaman Kullanılır?
Bir diziden belirli koşulları sağlayan elemanları ayıklamak için.
2. map Fonksiyonu
Amacı: Dizideki her elemanı dönüştürerek yeni bir dizi oluşturmak.
Orijinal Dizi: Değişmez.
Kullanımı:
const numbers = [1, 2, 3, 4, 5];
const doubled
Numbers = numbers.map(num => num * 2);
console.log(doubledNumbers); // [2, 4, 6, 8, 10]
Ne Zaman Kullanılır?
Dizideki elemanları değiştirmek veya yeni bir formatta kullanmak için.
3. forEach Fonksiyonu
Amacı: Dizideki her eleman için bir işlem yapmak.
Orijinal Dizi: Değişebilir.
Kullanımı:
const numbers = [1, 2, 3, 4, 5];
numbers.forEach(num => console.log(num));
Ne Zaman Kullanılır?
Diziyi değiştirmek ya da elemanları ekrana yazdırmak gibi yan etkiler oluşturmak için.
4. reduce Fonksiyonu
Amacı: Dizideki elemanları tek bir değere indirgemek (toplama, çarpma gibi).
Orijinal Dizi: Değişmez.
Kullanımı:
const numbers = [1, 2, 3, 4, 5];
const sum = numbers.reduce((acc, num) => acc + num, 0);
console.log(sum); // 15
Ne Zaman Kullanılır?
Toplam, ortalama veya birleştirme gibi işlemler için.
5. some Fonksiyonu
Amacı: Dizide en az bir elemanın belirli bir koşulu sağlayıp sağlamadığını kontrol etmek.
Orijinal Dizi: Değişmez.
Kullanımı:
const numbers = [1, 2, 3, 4, 5];
const hasEvenNumber = numbers.some(num => num % 2 === 0);
console.log(hasEvenNumber); // true
Ne Zaman Kullanılır?
Dizide belirli bir koşulu sağlayan eleman olup olmadığını kontrol etmek için.
6. every Fonksiyonu
Amacı: Tüm elemanların belirli bir koşulu sağlayıp sağlamadığını kontrol etmek.
Orijinal Dizi: Değişmez.
Kullanımı:
const numbers = [1, 2, 3, 4, 5];
const allEvenNumbers = numbers.every(num => num % 2 === 0);
console.log(allEvenNumbers); // false
Ne Zaman Kullanılır?
Tüm elemanların belirli bir şartı sağlayıp sağlamadığını test etmek için.
7. find Fonksiyonu
Amacı: Koşulu sağlayan ilk elemanı bulmak.
Orijinal Dizi: Değişmez.
Kullanımı:
const numbers = [1, 2, 3, 4, 5];
const firstEvenNumber = numbers.find(num => num % 2 === 0);
console.log(firstEvenNumber); // 2
Ne Zaman Kullanılır?
İlk eşleşen elemanı almak için.
8. findIndex Fonksiyonu
Amacı: Koşulu sağlayan ilk elemanın indeksini bulmak.
Orijinal Dizi: Değişmez.
Kullanımı:
const numbers = [1, 2, 3, 4, 5];
const firstEvenNumberIndex = numbers.findIndex(num => num % 2 === 0);
console.log(firstEvenNumberIndex); // 1
Ne Zaman Kullanılır?
İlk eşleşmenin indeksini almak için.
9. sort Fonksiyonu
Amacı: Diziyi sıralamak.
Orijinal Dizi: Değişir.
Kullanımı:
const numbers = [3, 1, 4, 2, 5];
numbers.sort((a, b) => a - b);
console.log(numbers); // [1, 2, 3, 4, 5]
Ne Zaman Kullanılır?
Diziyi küçükten büyüğe veya başka bir kritere göre sıralamak için.
10. reduceRight Fonksiyonu
Amacı: Diziyi sağdan sola doğru indirgemek.
Orijinal Dizi: Değişmez.
Kullanımı:
const numbers = [1, 2, 3, 4, 5];
const result = numbers.reduceRight((acc, num) => acc + num, 0);
console.log(result); // 15
Ne Zaman Kullanılır?
Özellikle sağdan başlayarak işlemler yapmak için.
Özet
| Fonksiyon | Amaç | Orijinal Dizi | Dönen Değer |
|---|---|---|---|
| filter | Filtreleme | Değişmez | Yeni dizi |
| map | Dönüştürme | Değişmez | Yeni dizi |
| forEach | Döngü | Değişebilir | undefined |
| reduce | İndirgeme | Değişmez | Tek bir değer |
| some | Koşul kontrolü | Değişmez | true/false |
| every | Koşul kontrolü | Değişmez | true/false |
| find | Eleman bulma | Değişmez | Eleman/undefined |
| findIndex | İndeks bulma | Değişmez | Sayı/-1 |
| sort | Sıralama | Değişir | Sıralı dizi |
| reduceRight | Ters indirgeme | Değişmez | Tek bir değer |
JavaScript'teki bu dizi fonksiyonlarını öğrenmek, kodunuzu daha verimli ve temiz yazmanızı sağlar. Hangisini ne zaman kullanmanız gerektiğini anlamak, algoritmalarınızı hızlandırır ve hata riskini azaltır.
Umarım faydalı bir yazı olmuştur. ߘŠ Başka bir yazıda görüşmek üzere, hoşçakalın! Takipte kalın: www.latestsoftwaredevelopers.com