JavaScript တွင် ပုံမှန်အချိန်ပြစနစ် စတင်ခြင်း
setTimeout လုပ်ဆောင်ချက်ကို ပုံမှန်အချိန်ပြစနစ်များ ဖန်တီးရန်အတွက် ရည်ရွယ်ထားခြင်းမဟုတ်သော်လည်း၊
ပြန်လည်ခေါ်သုံးခြင်း (recursion) ကို အသုံးပြုပါက
၎င်းတို့ကို ၎င်းဖြင့် ပြုလုပ်နိုင်ပါသည်။
let i = 0;
function timer() {
setTimeout(function() {
console.log(++i);
timer(); // ကျွန်ုပ်တို့ကိုယ်တိုင် ပြန်ခေါ်မည်
}, 1000);
}
timer();
ထိုကဲ့သို့သော ပုံမှန်အချိန်ပြစနစ်ကို ပြန်လည်ခေါ်သုံးခြင်း မဖြစ်အောင် တားဆီးခြင်းအားဖြင့် ရပ်တန့်နိုင်ပါသည်။
let i = 0;
function timer() {
setTimeout(function() {
console.log(++i);
if (i < 10) { // ရေတွက်ကိန်း 10 ထက်နည်းမှသာ စတင်ပါမည်
timer();
}
}, 1000);
}
timer();
Console တွင် ဂဏန်း 0 ကို ထုတ်ပြပါ။
တစ်စက္ကန့်အကြာတွင် ဂဏန်း 1 ကို ထုတ်ပြပါ၊ နှစ်စက္ကန့်အကြာတွင်
ဂဏန်း 2 ကို ထုတ်ပြပါ၊ 3 စက္ကန့်အကြာတွင် ဂဏန်း 3
ကို ထုတ်ပြပါ။ ထိုနည်းအတိုင်း အဆုံးမရှိ ဆက်လက်လုပ်ဆောင်ပါ။