Dizi Metotlarını Zincirleme
Coddy'nin JavaScript Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 55 / 65.
Dizi zincirleme (chaining), tek bir ifadede bir dizi üzerinde birden fazla işlem gerçekleştirmenize olanak tanır. Bu yaklaşım kodunuzu daha özlü ve okunabilir hale getirebilir.
İşte dizi metotlarını zincirlemeye bir örnek:
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const result = numbers
.filter(num => num % 2 === 0)
.map(num => num * 2)
.reduce((sum, num) => sum + num, 0);
console.log(result); // 60Bu örnekte, bir sayılar dizisi ile başlıyoruz, tek sayıları filtreliyoruz, kalan her bir sayıyı ikiyle çarpıyoruz ve ardından sonuçları topluyoruz.
Zincirleme sırası önemlidir. Zincirdeki her metot, bir önceki metodun sonucu üzerinde çalışır.
Görev
KolayMeyve nesnelerinden oluşan bir dizi alan processFruits adında bir function oluşturun. Her meyve nesnesi name (metin) ve quantity (sayı) özelliklerine sahiptir.
Fonksiyon, aşağıdakileri yapmak için zincirleme dizi metotları kullanmalıdır:
- Miktarı (
quantity) 0 olan meyvelerifilterile ayıklayın - Her meyve adını büyük harfe dönüştürün
- Tüm meyveleri miktarlarıyla birlikte "APPLE: 5, BANANA: 3" şeklinde listeleyen tek bir metin oluşturun
Hızlı bir hatırlatma:
Bir metin dizisini tek bir metne dönüştürmek için .join(", ") fonksiyonunu kullanabilirsiniz.
.join() fonksiyonunu bile zincirleme olarak bağlamak mümkündür:
arr.filter(...)
.map(...)
.join(...)Kendin dene
function processFruits(fruits) {
// Kodunuzu buraya yazın
}
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Mantık ve Akış bölümündeki tüm dersler
1Derinlemesine Stringler
String TemelleriString Üzerinde YinelemeTemplate LiteralsString MetotlarıÖzet - String Weaver4JSON Bölüm 2
JSON Üzerinde Yinelemeİç İçe Geçmiş JSONJSON Optional ChainingSığ ve Derin KopyalamaÖzet - Bisiklet MağazasıÖzet - Güneş Sistemi7Kütüphane Yönetim Sistemi
Projeye Genel BakışKitap Ekleme10Festival Sistemi Yönetimi
Projeye Genel BakışFilm ve Mekan Ekle2Çok Boyutlu Diziler
2D Dizi Temelleri2D Dizi Elemanlarına Erişme2D Dizilerle İç İçe DöngülerÖzet - 2D DizilerMatris Toplama ve ÇıkarmaDüzensiz Diziler3D Diziler ve ÖtesiYaygın 2D Dizi DesenleriÖzet - Diziler Hakkında Her Şey5Kümeler Bölüm 1
Küme Nedir?Kümeler Üzerinde YinelemeEleman EklemeEleman SilmeEleman Varlığını Kontrol EtmeBoyut ve Boş Olma DurumuKopyalama ve TemizlemeÖzet - Kümelerin Temelleri8Diziler: İlginç Konular
Dizi Yapı SökümüDizilerde Spread SözdizimiSeyrek DizilerÖzet - Diziler Workshop3JSON Bölüm 1
JSON Nedir?Anahtarın Varlığını Kontrol EtmeNesne MetotlarıSpread Operatörü Bölüm 1Spread Operatörü Bölüm 2Anahtarları KaldırmaÖzet - JSON Anahtarlarını Yönetme6Kümeler Bölüm 2
Matematik - Kümelerin BirleşimiMatematik - Kümelerin KesişimiMatematik - Kümelerin FarkıMatematik - Simetrik FarkAlt Kümeler ve Üst KümelerÖzet - Arkadaşları Gruplandırma9İleri Seviye Dizi Metotları
Join ve Split MetotlarıMap MetoduFilter MetoduReduce MetoduDizi Metotlarını ZincirlemeForEach ve Map Aynı mı?Sort MetoduFind ve FindIndex MetotlarıÖzet - Zincir UstasıKendi başına pratik yap: Online JavaScript derleyicisi