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('არა');
}