Döngülərin işləmə prinsipi şərt ödənildiyi müddətcə kodu təkrarlamaqdır. FOR və WHILE JavaScript-də tez-tez istifadə olunan iki döngü əmrləridir.

Tutaq ki, 5 elementdən ibarət meyvələr adlı bir massivimiz (array) var. Onları döngülərdən istifadə etmədən çap etmək üçün aşağıdakı uzun kodu yazmalı olduq;

let soz;
soz+= meyveler[0] + "";
soz+= meyveler[1] + "";
soz+= meyveler[2] + "";
soz+= meyveler[3] + "";
soz+= meyveler[4] + "";

Ancaq FOR döngüsündən istifadə etsək, bu qısa olardı:

let soz;
for( i = 0; i < meyveler.length; i++ ){ 
    console.log(meyveler[i])
}

Beləliklə, kodlarınızda belə faydalı bir şeydən necə istifadə edəcəyinizi öyrənməyə hazır olun.

FOR Döngüsü

For istifadə edərkən nöqtəli vergüllə ayrılmış üç məlumat daxil etməliyik;
 

for ( ifadə 1; ifadə 2; ifadə 3 )
  • ifadə 1: Döngü öncəsi tətbiq ediləcək kodlar
  • ifadə 2: Döngünün hansı şərtlərdə davam edəcəyi
  • ifadə 3: Döngü içindəki kodların hər bitdiyində işləməli olan kodlar

Məsələn:

for (i = 0; i < 5; i++ )
{
   console.log("Say "+i)
}


Burada i=0 onu göstərir ki, biz i adlı dəyişən yaratmışıq və ona  0 dəyərini vermişik. Əgər i < 5, yəni i -nin dəyəri 5-dən azdırsa, dövrə davam edir. i-dən böyük və ya i-ə bərabər olduqda, dövrə bitir. Sonda yazılan i++ isə i dəyişəninin dəyərinin dövrə daxilində kodun hər yerinə yetirilməsindən sonra 1 sayı artırır. Nəticədə dövrə i = 0 ilə başlayacaq və hər dəfə artacaq, i = 4 olduqda isə axırıncı dəfə işləyəcək və bitəcək. Kodlar cəmi 5 dəfə işlənəcək.

Nəticə:

Say 0
Say 1
Say 2
Say 3
Say 4

FOR / IN Döngüsü

Obyektlərdə olan məlumatları çap etməyə imkan verir. Nümunəni nəzərdən keçirin.

let istifadeci = {ad:"Mirsahib", soyad:"Məmmədov", yas:25}; 
let netice = "";
for (x in istifadeci) {
    netice += " "+istifadeci[x];
}
console.log(netice);

// netice dəyişkəni "Mirsahib Məmmədov 25" olacaqdır.

WHILE Döngüsü

while( şərt ) { kodlar } , şərt yerinə yetirildiyi müddətcə bu dövr təkrarlanacaq. Nümunəyə baxaq;

var i = 0;

while( i < 10 )
{
   console.log( "Say " + i );

   i++;
}

Burada şərt i-nin dəyəri 10-dan az olması qeyd olunub. Bu o demıəkdir ki, i-nin dəyəri 10-dan kiçik olduğu müddətcə döngü davam edəcək və mötərizə içərisində yazılan kodlar hər döngü zamanı işləyəcək. WHILE-ın işlədiyi kodlara baxsanız, i++, yəni i-nin bir artırılması tələb olunub. Beləliklə, əgər kodu işə salarsaq, i = 0, i = 1 ... i = 9 kimi artaraq i-nin dəyəri dəyişməyə davam edəcək, lakin i = 10 olmayacaq. Çünki şərtdə i-nin 10-dan az olması qeyd olunub.


DO WHILE Döngüsü

WHILE koduna bənzər işləyir. Amma bu dəfə şərtin yoxlanıldığı yer dövrənin əvvəlində deyil, sonundadır. Buna görə də kod bir dəfə də olsa işləyəcəkdir. 

var i = 0;

do {
   console.log( "Say " + i );

   i++;
}

while( i < 10 );

Döngünü sonlandırmaq (break)

JavaScript-də işləyən döngü break komandası ilə dayandırıla bilər. Aşağıdakı misalda i dəyəri 10-dan az olduğu müddətcə döngü davam edəcək deməkdir, lakin i = 3 olduqda, dövrə son qoyulacaq. Çünki break komandası istifadə olunub.

for (i = 0; i < 10; i++)
{
    if (i == 3)
    {
       break;
    }

    console.log("Say " + i);
}


Sonrakı təkrara keçmək (continue)

Mövzunun başında da qeyd edildiyi kimi döngülərin işləmə prinsipi şərt ödənildiyi müddətcə kodu təkrarlamaqdır. Bəzi hallar gələ bilər ki, müəyyən şərtlər olduqda döngüdəki təkrarlardan birini və ya bir neçəsini işlətmək istəməyə bilərsiniz. Aşağıdakı nümunədə daha aydın şəkildə anlayacaqsınız.
 

for (i = 0; i <= 10; i++)
{
    if (i == 3)
       continue;
    
    console.log("Say "+i)
    
}

Burada i dəyəri 10-dan kiçik, və ya 10-a bərabər olduğu müddətcə döngü təkrarı olacaqdır və hər döngü sonunda console.log() funksiyası vasitəsi ilə dəyər konsolda əks olunacaqdır, lakin i dəyəri 3 olduqda continue komandası yazdığımız üçün kod bitməmiş (yəni console.log() funksiyasına çatmamış) digər təkrara keçəcəkdir və nəticə aşağıdakı kimi olacaqdır.

Say 1
Say 2
Say 4
Say 5
Say 6
Say 7
Say 8
Say 9
Say 10