Döngüler aynı kodu farklı değişkenlerle döndürmemizi sağlar. FOR ve WHILE, JavaScript'te sıklıkla kullanılan iki döngü komutudur.
Varsayalım 5 elemanlı meyveler adında bir dizemiz var. Döngü kullanmadan bunları yazdırmak için uzunca aşağıdaki kodu yazmamız gerekirdi;
Fakat FOR döngüsü kullansaydık işte bu kadar kısa olacaktı:
O halde böyle kullanışlı bir şeyi kodlarınızda kullanmak için öğrenmeye hazır olun.
Kullanırken noktalı virgülle ayrılmış üç bilgi girmemiz gerekir;
for ( ifade 1; ifade 2; ifade 3 )
for (i = 0; i < 5; i++ )
Burada i = 0, i adlı bir değişken yaratıp 0 değerini verdiğimizi belirtiyor. i < 5, i, 5'ten küçükse döngü devam eder. Ne zaman ki eşit ya da büyük olursa döngü sona erer. Sondaki i++ ise döngü içindeki kodlar her çalıştırıldıktan sonra i değişkeninin değerini 1 arttırmasını ister. Sonuçta döngü i = 0 ile başlayıp her seferde artarak i = 4 olduğunda son kez çalıştırılıp bitecektir. Toplamda 5 kez kodlar çalıştırılır.
Nesnelerin barındırdığı verileri yazdırmayı sağlar. Örneği inceleyin;
while( koşul ) { kodlar } şeklinde kullanımı olan bu döngü koşul sağlandığı sürece tekrar edecektir. Örneğe bakalım;
Koşul i'nin 10'dan küçük olması. WHILE'ın çalıştırdığı kodlara bakarsanız i++ yani i'nin bir arttırılması istenmiş. Bu sayede i = 0, i = 1 ... i = 9 olur ancak i = 10 olmaz. Çünkü koşul i'nin 10'dan küçük olması şartını koymuş.
WHILE koduna benzer şekilde çalışır. Fakat bu kez koşulun kontrol edildiği yer döngünün başında değil sonundadır.
JavaScript'te çalışmakta olan bir döngü break komutuyla durdurulabilir. Aşağıdaki örnekte 10'dan küçükse çalıştır anlamı içerse de i = 3 olduğunda döngü sonlandırılacaktır. Çünkü break kodu kullanıldı.
Döngü tekrarlardan oluşur. Bazı tekrarları hızlı geçmek ve sonraki tekrardan devam etmek isteyebilirsiniz. Bu durum için kullanacağınız kod continue.
Yukarıdaki kod çalıştırıldığında "Benim sayım 3" ifadesinin atlandığını göreceksiniz.
Varsayalım 5 elemanlı meyveler adında bir dizemiz var. Döngü kullanmadan bunları yazdırmak için uzunca aşağıdaki kodu yazmamız gerekirdi;
JavaScript Kodu
kelime += meyveler[0] + "<br/>";
kelime += meyveler[1] + "<br/>";
kelime += meyveler[2] + "<br/>";
kelime += meyveler[3] + "<br/>";
kelime += meyveler[4] + "<br/>";
kelime += meyveler[1] + "<br/>";
kelime += meyveler[2] + "<br/>";
kelime += meyveler[3] + "<br/>";
kelime += meyveler[4] + "<br/>";
Fakat FOR döngüsü kullansaydık işte bu kadar kısa olacaktı:
JavaScript Kodu
for( i = 0; i < meyveler.length; i++ )
{
kelime += meyveler[i] + "<br/>";
}
{
kelime += meyveler[i] + "<br/>";
}
O halde böyle kullanışlı bir şeyi kodlarınızda kullanmak için öğrenmeye hazır olun.
FOR Döngüsü
Kullanırken noktalı virgülle ayrılmış üç bilgi girmemiz gerekir;
for ( ifade 1; ifade 2; ifade 3 )
- ifade 1: Döngü öncesi uygulanacak kodlar
- ifade 2: Döngünün hangi şartlarda devam edeceği
- ifade 3: Döngü içindeki kodların uygulanması her tamamlandığında çalıştırılacak kodlar
for (i = 0; i < 5; i++ )
Burada i = 0, i adlı bir değişken yaratıp 0 değerini verdiğimizi belirtiyor. i < 5, i, 5'ten küçükse döngü devam eder. Ne zaman ki eşit ya da büyük olursa döngü sona erer. Sondaki i++ ise döngü içindeki kodlar her çalıştırıldıktan sonra i değişkeninin değerini 1 arttırmasını ister. Sonuçta döngü i = 0 ile başlayıp her seferde artarak i = 4 olduğunda son kez çalıştırılıp bitecektir. Toplamda 5 kez kodlar çalıştırılır.
FOR/IN Döngüsü
Nesnelerin barındırdığı verileri yazdırmayı sağlar. Örneği inceleyin;
JavaScript Kodu
var kisi = {ad:"Murat", soyad:"Elicaliskan", yas:30};
var mesaj = "";
var x;
for (x in kisi) {
mesaj += kisi[x];
}
// mesaj değişken "Murat Elicaliskan 30" olacaktır.
var mesaj = "";
var x;
for (x in kisi) {
mesaj += kisi[x];
}
// mesaj değişken "Murat Elicaliskan 30" olacaktır.
WHILE Döngüsü
while( koşul ) { kodlar } şeklinde kullanımı olan bu döngü koşul sağlandığı sürece tekrar edecektir. Örneğe bakalım;
JavaScript Kodu
var mesaj = "";
var i = 0;
while( i < 10 )
{
mesaj = "Benim sayım " + i + "<br />";
i++;
}
var i = 0;
while( i < 10 )
{
mesaj = "Benim sayım " + i + "<br />";
i++;
}
Koşul i'nin 10'dan küçük olması. WHILE'ın çalıştırdığı kodlara bakarsanız i++ yani i'nin bir arttırılması istenmiş. Bu sayede i = 0, i = 1 ... i = 9 olur ancak i = 10 olmaz. Çünkü koşul i'nin 10'dan küçük olması şartını koymuş.
DO/WHILE Döngüsü
WHILE koduna benzer şekilde çalışır. Fakat bu kez koşulun kontrol edildiği yer döngünün başında değil sonundadır.
JavaScript Kodu
do {
mesaj += "Benim sayım " + i + "<br />";
i++;
}
while (i < 10);
mesaj += "Benim sayım " + i + "<br />";
i++;
}
while (i < 10);
Döngüyü Sonlandırmak (break)
JavaScript'te çalışmakta olan bir döngü break komutuyla durdurulabilir. Aşağıdaki örnekte 10'dan küçükse çalıştır anlamı içerse de i = 3 olduğunda döngü sonlandırılacaktır. Çünkü break kodu kullanıldı.
JavaScript Kodu
for (i = 0; i < 10; i++)
{
if (i == 3)
{
break;
}
text += "Benim sayım " + i + "<br />";
}
{
if (i == 3)
{
break;
}
text += "Benim sayım " + i + "<br />";
}
Sonraki Tekrara Geçmek (continue)
Döngü tekrarlardan oluşur. Bazı tekrarları hızlı geçmek ve sonraki tekrardan devam etmek isteyebilirsiniz. Bu durum için kullanacağınız kod continue.
JavaScript Kodu
var ileti = "";
for (i = 0; i <= 10; i++)
{
if (i == 3)
continue;
ileti += "Benim sayım " + i + "<br />";
}
for (i = 0; i <= 10; i++)
{
if (i == 3)
continue;
ileti += "Benim sayım " + i + "<br />";
}
Yukarıdaki kod çalıştırıldığında "Benim sayım 3" ifadesinin atlandığını göreceksiniz.
IF, ELSE IF, ELSE, FOR, WHILE gibi kod blokları içeren komutlar kullanırken eğer yazacağımız kod tek satırsa kıvrımlı parantez {} kullanmadan alt satıra kodu yazabiliriz. Örneğin;
for ( i = 0; i < 5; i++ )
mesaj += "Benim sayım " + i + " <br />";
for ( i = 0; i < 5; i++ )
mesaj += "Benim sayım " + i + " <br />";
