⊗jsPmLpCn 157 of 505 menu

De continue-instructie in JavaScript

Er bestaat ook een instructie continue, die een nieuwe iteratie van de lus start. Deze instructie kan soms nuttig zijn voor het vereenvoudigen van code, hoewel de taak vrijwel altijd ook zonder kan worden opgelost. Laten we eens kijken naar een praktisch voorbeeld.

Stel we hebben een array met getallen. Laten we deze met een lus doorlopen en de getallen die deelbaar zijn door 2, kwadrateren en uitprinten naar de console, en de getallen die deelbaar zijn door 3, tot de derde macht verheffen en uitprinten naar de console. Hier is de oplossing van de beschreven taak:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; for (let elem of arr) { let result; if (elem % 2 === 0) { result = elem * elem; console.log(result); } else if (elem % 3 === 0) { result = elem * elem * elem; console.log(result); } }

Zoals je ziet, wordt de regel console.log(result) twee keer herhaald. Laten we deze er uit halen, buiten de if, zo:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; for (let elem of arr) { let result; if (elem % 2 === 0) { result = elem * elem; } else if (elem % 3 === 0) { result = elem * elem * elem; } console.log(result); // heeft de print buiten de conditie gehaald }

Nu werkt ons script echter een beetje anders: het resultaat is dat ook voor gewone elementen, die niet via onze if zijn verwerkt, de variabele result naar de console wordt geprint, wat volgens de voorwaarden van onze taak niet nodig is.

Laten we het probleem oplossen door aan onze if een extra voorwaarde else toe te voegen, die zal worden geactiveerd voor elementen die niet deelbaar zijn door 2 en 3, en daar roepen we de instructie continue aan, die ons onmiddellijk zal overbrengen naar de nieuwe iteratie van de lus:

let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; for (let elem of arr) { let result; if (elem % 2 == 0) { result = elem * elem; } else if (elem % 3 == 0) { result = elem * elem * elem; } else { continue; // gaat naar de nieuwe iteratie van de lus } console.log(result); // wordt uitgevoerd als deelbaar door 2 of 3 }

Schrijf een lus die alleen de even getallen van 1 tot 100 toont, en de oneven getallen overslaat met behulp van continue.

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren