Napaka manjkajoče zastavice v zanki JavaScript
Recimo, da imamo neko število:
let num = '12345';
Preverimo, ali je v tem številu določena številka. Nek programer je že napisal kodo, ki izvaja zgoraj opisano:
for (let digit of num) {
if (digit === '3') {
console.log('je');
} else {
console.log('ni');
}
}
Ta koda pa deluje nepravilno,
saj za vsak element izpiše 'je' ali 'ni'.
Mi pa potrebujemo, da se rezultat izpiše
samo enkrat. V tem primeru se v kombinaciji
z zanko problem reši samo s pomočjo zastavice:
let hasDigit = false; // zastavica
for (let digit of num) {
if (digit === '3') {
hasDigit = true;
break;
}
}
if (hasDigit) {
console.log('je');
} else {
console.log('ni');
}