Döngüler

Programlama dillerinde döngü (loop); bir dizi işlemi belirli bir sayıda veya bir koşul gerçekleşene kadar yinelemektir. Döngüler yineleme açısından iki türden olur.

  • Sayaçlı Döngüler: Belirli bir sayıda tekrar eden, teorik olarak işlemin tekrarlama sayısı belli olan döngüler.

  • Koşullu Döngüler: Belirlenen koşul gerçekleşene kadar tekrar eden, teorik olarak işlemin tekrarlanma sayısı belli olmayan döngüler.

Esasında 'Sayaçlı Döngüler' de sayacın belirli bir sayıya ulaşma koşuluna göre çalışmaktadır. Fakat döngü sayısının belirli olması ayrımı vardır. Javascript'te kullanılan üç tane döngü deyimi vardır.

  • for Döngüsü ( Sayaçlı Döngü )

  • while - do while Döngüsü ( Koşullu Döngü )

Döngülerle birlikte şu kavramları da şimdiden öğrenmeniz faydalıdır.

  • Sıralanmış (Ordered) Veriler: Öğelerine belirli bir sıra ile erişilebilen veri yapısı.

    Örnek olarak:

    let str = 'Javascript';

    string tipinin veri yapısı sıralanmış (ordered) olduğu için str değişkeninin her bir öğesine (karakterine) teker teker ulaşabiliriz. Örnek.

    alert( str[2] ); //v harfi çıktısı verir.
  • Sıralanmamış (Unordered) Veriler: Öğelerine belirli bir sıra ile erişilemeyen veri yapısı.

    Örnek olarak:

    let sayi = 123;
    alert( sayi[0] ); //'undefined' çıktısı verir. Sırası ile erişilemez.
  • Değiştirilebilir (Mutable) Veriler: Değiştirilebilmesi mümkün veri birimi.

    Örnek olarak:

    let str = 'Programlama Dili';
    str = 'JavaScript'; // str mutable, değiştirilebilir.
    let sayi = 123;
    sayi = 0;
  • Değiştirilemez (Immutable) Veriler: Değiştirilebilmesi mümkün olmayan veri birimi.

    Örnek olarak:

    let str = 'TUR';
    str[1] = 'I'; // İşlem yapılmaz. Değiştirilemez (immutable)
    alert(str);
  • Yinelenebilir (Iterable) Veriler: Öğeleriyle yinelenebilir özellikte olan veri yapısı.

  • Yineleyici (Iterator): Bir veri yapısının yinelettirilebilen her bir birimi.

Örnek olarak string veri tipini ele alalım. String türünde oluşturulmuş bir değişkenimiz olsun:

let karakterDizisi = 'Javascript';

string tipinin veri yapısı sıralanmış (ordered) olduğu için karakterDizisi değişkeninin her bir öğesine (karakterine) teker teker ulaşabiliriz. Örnek.

alert( karakterDizisi[2] ); //v harfi çıktısı verir.

string veri yapısı değiştirilebilir (mutable) olduğu için karakterDizisi değişkeninin tuttuğu veriyi değiştirebiliriz. Örnek.

karakterDizisi = 'Programlama Dili';

Fakat karakterDizisi değişkeninin eriştiğimiz (dilimlediğimiz) herhangi bir öğesi değiştirilemez (immutable) yapıdadır. Değiştiremeyiz. Örnek.

karakterDizisi[0] = 'T'; // İşlem yapılmaz. Değiştirilemez (immutable)
alert(karakterDizisi);

Her bir karakteri ekrana uyarı olarak verme işlemini bir döngü (loop) veya yineleyici (iterator) sayesinde yapabiliriz. Döngü ve yineleme farklı terimlerdir.

string veri yapısı yinelenebilir (iterable) olduğu için karakterDizisi değişkeninin tuttuğu verinin her bir birimi (iterator) ile tekerrür ettirebiliriz.

Last updated