Geneste Lussen
In dit hoofdstuk zullen we het concept van geneste lussen verkennen. Geneste lussen zijn lussen binnen lussen, en ze zijn een krachtig hulpmiddel in programmeren dat ons in staat stelt om herhaalde acties op een gestructureerde manier uit te voeren. Door geneste lussen te gebruiken, kunnen we efficiënt complexe structuren navigeren en manipuleren, zoals rasters, wat precies is wat onze Ninja in dit hoofdstuk zal doen.
Stel je voor dat onze Ninja door een raster beweegt en sushi verzamelt. Het raster bestaat uit rijen en kolommen, en ons doel is om alle sushi te verzamelen die over dit raster verspreid is. Om dit te bereiken, kunnen we geneste lussen gebruiken: één lus om over de rijen te bewegen en een andere lus om door elke kolom te bewegen.
Laten we eens kijken naar een voorbeeld om te begrijpen hoe geneste lussen werken in de context van ons Ninja-spel:
ninja.js
In het bovenstaande voorbeeld hebben we twee functies: ninjaController
en lootColumn
. De functie ninjaController
gebruikt een while
-lus om de Ninja van links naar rechts over het raster te verplaatsen. Voor elke kolom roept het de functie lootColumn
aan, die een andere while
-lus bevat om de Ninja omhoog te bewegen en sushi te verzamelen terwijl hij gaat. Zodra de Ninja de bovenkant van de kolom bereikt, gebruikt hij een for
-lus om terug naar zijn oorspronkelijke positie te gaan.
Door de while
-lus binnen de functie lootColumn
te nesten binnen de while
-lus van de functie ninjaController
, kunnen we efficiënt alle sushi in elke kolom verzamelen voordat we naar de volgende gaan.
Swipe to start coding
Oplossing
Bedankt voor je feedback!
ninja.js
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.