Şərt doğru olduqca təkrar et
while şərti gövdədən əvvəl yoxlayır. Şərt ilk anda yanlış olsa, gövdə heç işləməz. Dövrü yazmazdan əvvəl başlanğıc dəyəri, hər iterasiyanın dəyişdirdiyi vəziyyəti və bitmə şərtini müəyyən et.
function sumTo(limit) {
if (!Number.isInteger(limit) || limit < 0) return null;
let current = 1;
let total = 0;
while (current <= limit) {
total += current;
current += 1;
}
return total;
}
console.log(sumTo(4), sumTo(0)); // 10 0
Sonsuz dövrü tanı
Sayğac artmasa və şərt dəyişməsə dövr dayanmaz. Brauzerdə belə sinxron dövr səhifənin cavab verməsini əngəlləyə bilər. Sərhəddə <= və < arasında bir iterasiya fərqi var; kiçik girişlər üçün addımları kağızda yaz.
Şərtə görə təkrar sayı əvvəlcədən məlum deyilsə while uyğundur. Girişin etibarsızlığı və istifadəçinin imtinası üçün çıxış yolu saxla. do...while isə şərti sonda yoxlayır və gövdəni ən az bir dəfə icra edir; bu fərqi lazım olan davranışa görə seç.