JavaScript လှည့်ကွင်းတွင် အလံမပါရှိမှု အမှား
ကျွန်ုပ်တို့တွင် နံပါတ်တစ်ခုရှိသည်ဆိုပါစို့-
let num = '12345';
ဤနံပါတ်ထဲတွင် သတ်မှတ်ထားသော ကိန်းဂဏန်းရှိမရှိ စစ်ဆေးကြည့်ပါ။ ပရိုဂရမ်မာတစ်ဦးသည် ဖော်ပြထားသည့်အတိုင်း အကောင်အထည်ဖော်သည့် ကုဒ်ကို ရေးသားပြီးဖြစ်သည်-
for (let digit of num) {
if (digit === '3') {
console.log('ရှိတယ်');
} else {
console.log('မရှိဘူး');
}
}
သို့သော် ဤကုဒ်သည် မှန်ကန်စွာ အလုပ်မလုပ်ပါ၊
ခင်းကျင်းဖော်ပြချက်တစ်ခုစီအတွက် 'ရှိတယ်' သို့မဟုတ် 'မရှိဘူး'
ကို ထုတ်ပြသည်။
ကျွန်ုပ်တို့အနေဖြင့် ရလဒ်ကို တစ်ကြိမ်တည်းသာ ထုတ်ပြစေလိုသည်။
ဤအခြေအနေတွင် လှည့်ကွင်းနှင့် ပေါင်းစပ်ပါက ပြဿနာကို အလံဖြင့်သာ ဖြေရှင်းနိုင်သည်-
let hasDigit = false; // အလံ
for (let digit of num) {
if (digit === '3') {
hasDigit = true;
break;
}
}
if (hasDigit) {
console.log('ရှိတယ်');
} else {
console.log('မရှိဘူး');
}