JavaScript/Döngüler

Vikikitap, özgür kütüphane

for döngüsü[değiştir]

for(komut1;koşul;komut2)
{
    //komutlar
}

for döngüsünün çalışma prensibi şöyledir:
1) komut1 çalıştırılır.
2) Koşula bakılır. Eğer koşul sağlanıyorsa;

2.1) küme parantezleri içindeki ya da -küme parantezleri yoksa- kendinden sonra gelen ilk satırdaki komut çalıştırılır.
2.2) komut2 çalıştırılır.
2.3) 2. adıma dönülür.

3) Eğer koşul sağlanmıyorsa küme parantezleri dışına ya da -küme parantezleri yoksa- kendinden sonra gelen ilk satırdaki komuttan hemen sonraki satıra çıkılır. Dolayısıyla döngüden çıkılmış olur.

while döngüsü[değiştir]

while(koşul)
{
    //komutlar
}

Koşul sağlandığı müddetçe komutlar çalıştırılır. Eğer bloğun içinde tek komut varsa söz konusu komutu küme parantezleri içine almaya gerek yoktur.

do-while döngüsü[değiştir]

do
{
    //komutlar
}while(koşul)

Komutlar önce her halükarda bir kez çalıştırılır. Daha sonra koşul sağlandığı müddetçe komutlar çalıştırılmaya devam edilir. Blok içinde bir tane komut varsa söz konusu komutu süslü parantezler içine almaya gerek yoktur.

Döngülerle kullanılabilen anahtar sözcükler[değiştir]

break[değiştir]

Döngüden çıkmayı sağlar.

continue[değiştir]

Döngünün o anki iterasyonunu sonlandırır. Bir sonraki iterasyona geçilir.

Etiketleme[değiştir]

Döngüler ve koşul ifadeleri etiketlenebilir. Etiketleme aslında döngüye/koşul ifadesine isim verme işlemidir. Döngüye/koşul ifadesine isim verdikten sonra bu isim break ve continue anahtar sözcüğüyle kullanılabilir. Bu durumda o döngüden/koşul ifadesinden çıkılacaktır/başa dönülecektir. Örnek:

AnaDongu:
for (var i = 0; i < 3; i++)
{
    for (var j = 0; j < 3; j++)
    {
        if (i + j == 3)
            break AnaDongu;
        document.write (i+j+" ");
    }
}

Bu kod ekrana 0 1 2 1 2 yazacaktır. Çünkü break AnaDongu; satırı ile en içteki döngüden değil AnaDongu döngüsünden çıkılır ki bu döngü en dıştaki döngüdür. Varsayılan durumda break ve continue komutlarıyla en içteki döngüden çıkılır/en içteki döngünün bir sonraki iterasyonuna geçilir.