JavaScript-də tsikldə bayraq olmaması səhvi
Tutaq ki, bizim müəyyən bir ədədimiz var:
let num = '12345';
Gəlin bu ədədin içində verilmiş rəqəmin olub-olmadığını yoxlayaq. Müəyyən bir proqramçı bunu həyata keçirən kodu artıq yazıb:
for (let digit of num) {
if (digit === '3') {
console.log('var');
} else {
console.log('yox');
}
}
Lakin bu kod düzgün işləmir, çünki massivin hər bir elementi üçün 'var' və ya 'yox' çıxış edir.
Biz isə nəticənin yalnız bir dəfə çıxış olunmasını istəyirik. Bu halda, tsikl ilə birlikdə problem yalnız bayraq vasitəsilə həll edilə bilər:
let hasDigit = false; // bayraq
for (let digit of num) {
if (digit === '3') {
hasDigit = true;
break;
}
}
if (hasDigit) {
console.log('var');
} else {
console.log('yox');
}