0Pricing
JavaScript Academy · Ders

Yinelemeli Protokol ve for...of

Yinelemeli protokolü öğrenin: Symbol.iterator, iterator.next() ve küçük özel örneklerle for...of, yayma ve Array.from kullanımı.

Yinelemeli Protokol ve for...of, CoddyKit'te ücretsiz bir JavaScript Academy dersidir. Bu, 3 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, JavaScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. JavaScript Academy kursu toplamda 3 dersten oluşur.

Büyük resim

Amaç: Küçük yinelemeli yapıları okumak ve oluşturmak.

  • iterable kavramının anlamı
  • Symbol.iterator ve iterator.next()
  • for...of, yayma ve Array.from
  • 0..N aralığında bir sayaç örneği oluşturmak
Yinelemeli Protokol ve for...of — resim 1

Yerleşik yapılarda for...of

for...of, diziler ve dizeler gibi yerleşik yinelemeli yapılarda çalışır ve öğeleri sırayla üretir.

// Arrays and strings are iterable
const arr = [10, 20, 30];
for (const n of arr) {
  console.log("arr item:", n);
}

const word = "JS";
for (const ch of word) {
  console.log("char:", ch);
}
Yinelemeli Protokol ve for...of — resim 2

Özel yinelemeli yapı

Bir iterable, bir yineleyici döndüren ve next() ile { value, done } üreten [Symbol.iterator]() özelliğine sahiptir.

// A tiny iterable that counts 0..max-1
const Counter = {
  make: function (max) {
    return {
      max: max,
      // Symbol.iterator returns an iterator object
      [Symbol.iterator]: function () {
        let i = 0;
        return {
          next: function () {
            if (i < max) {
              const out = { value: i, done: false };
              i = i + 1;
              return out;
            }
            return { value: undefined, done: true };
          }
        };
      }
    };
  }
};

for (const x of Counter.make(3)) {
  console.log("count:", x);
}
Yinelemeli Protokol ve for...of — resim 3

Elle yineleme

Arka planda for...of, done: true olana kadar tekrar tekrar next() çağırır.

// You can drive the iterator manually
const iterable = Counter.make(2);
const it = iterable[Symbol.iterator]();

console.log(it.next()); // { value: 0, done: false }
console.log(it.next()); // { value: 1, done: false }
console.log(it.next()); // { value: undefined, done: true }
Yinelemeli Protokol ve for...of — resim 4

Yayma ve Array.from

Yayma ve Array.from da değerleri toplamak için yineleyici protokolünü kullanır.

// Spread (...) and Array.from consume iterables
const small = Counter.make(4);
const a1 = [...small];
const a2 = Array.from(Counter.make(3));

console.log("spread:", a1);
console.log("from :", a2);
Yinelemeli Protokol ve for...of — resim 5

İyi alışkanlıklar

İpuçları:

  • [Symbol.iterator] içinde her seferinde yeni bir yineleyici döndürün.
  • Sonsuz döngülerden kaçınmak için her zaman done: true ile sonlandırın.
  • Durumu yineleyici kapanışı içinde yerel tutun.
Yinelemeli Protokol ve for...of — resim 6

Yineleyici protokolü sınaması

Kısa kontrol: Bir nesneyi yinelemeli hâle getirme.

Yinelemeli Protokol ve for...of — resim 7

Özet

Özet: Diziler gibi yerleşik yapılar yinelemelidir. Kendi yapınızı oluşturmak için, bir yineleyici döndüren [Symbol.iterator]() ekleyin; değerleri tüketmek için for...of, yayma veya Array.from kullanın.

Yinelemeli Protokol ve for...of — resim 8

Sıkça Sorulan Sorular

“Yinelemeli Protokol ve for...of” dersi ücretsiz mi?

Evet — “Yinelemeli Protokol ve for...of” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve JavaScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. JavaScript Academy kursu toplamda 3 dersten oluşur.

“Yinelemeli Protokol ve for...of” dersinde ne öğreneceğim?

Yinelemeli protokolü öğrenin: Symbol.iterator, iterator.next() ve küçük özel örneklerle for...of, yayma ve Array.from kullanımı. JavaScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

JavaScript Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te JavaScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 1. dersidir.

“Yinelemeli Protokol ve for...of” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu JavaScript Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her JavaScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Yinelemeli Protokol ve for...of
  2. Üreteç İşlevleri, yield ve Küçük İşlem Hatları
  3. Eşzamansız Yineleyiciler — for await...of ve Eşzamansız Üreteçler
← JavaScript Academy Sayfasına Dön