Lektionen des Moduls (3/4)
break und continue
Zwei sehr nützliche kleine Wörter innerhalb einer Schleife:
breakverlässt sofort die innerste Schleife.continuespringt zum nächsten Durchlauf, ohne den Rest des Rumpfes auszuführen.
break: Vorzeitig verlassen
Typisch für „suche das erste Element, das eine Bedingung erfüllt“:
function primoNegativo(nums) {
for (const n of nums) {
if (n < 0) return n; // o: result = n; break;
}
return undefined;
}
primoNegativo([3, 7, -2, 4, -9]); // -2Beispiel mit explizitem break:
let trovato = -1;
const nums = [10, 20, 30, 40, 50];
for (let i = 0; i < nums.length; i++) {
if (nums[i] === 30) {
trovato = i;
break;
}
}
trovato; // 2continue: Zum nächsten springen
Wenn dich ein Element nicht interessiert, du die Schleife aber fortsetzen willst:
function sommaPari(nums) {
let totale = 0;
for (const n of nums) {
if (n % 2 !== 0) continue; // salta i dispari
totale += n;
}
return totale;
}
sommaPari([1, 2, 3, 4, 5, 6]); // 12In vielen Fällen wäre ein if (cond) { ... } gleichwertig; continue hilft, wenn der Rumpf
lang ist und du den Fluss flach halten willst (wenig Verschachtelung).
Probier es aus
Definiere `firstGreater(nums, threshold)`, das das erste Element von nums zurückgibt, das strikt größer als threshold ist, oder undefined, wenn keines die Bedingung erfüllt. Verwende break (oder ein sofortiges return).
Hinweis anzeigen
Ein return innerhalb des for wirkt gleichzeitig wie ein break + return.
Lösung nach 3 Versuchen verfügbar
Wiederholungsübung
Definiere `sumSkippingZeros(nums)`, das alle Elemente außer exakten Nullen summiert. Verwende continue.
Hinweis anzeigen
Wenn n === 0 ist, continue; andernfalls akkumulieren.
Lösung nach 3 Versuchen verfügbar