Soorten flow control-structuren in JavaScript

Inhoudsopgave

Vandaag zullen we flow control-structuren zien, ook wel gewoon control-structuren of vooral iteratieve structuren genoemd. Deze instructies zijn erg interessant en worden gebruikt omdat ze het concept van programma tot intelligent programma ontwikkelen.

Waarom?

Als we de flow control-structuren niet gebruiken, is een programma eenvoudig. Het is een programma dat aanvankelijk alleen variabelen en operators gebruikt in wat we een reeks instructies in lineaire tijd kunnen noemen, dat wil zeggen, de een na de ander.
Door de structuren te introduceren die we hieronder zullen zien, is ons programma niet langer louter een lineaire opeenvolging van inefficiënte instructies om een ​​programma te worden dat in staat is beslissingen te nemen afhankelijk van de waarde van de variabelen die het verwerkt, vandaar dat ze "intelligent" worden genoemd. .

De iteratieve structuren ze worden zo genoemd omdat de instructies die moeten worden uitgevoerd kan een of meerdere keren worden herhaald. Er is een grote verscheidenheid aan soorten iteratieve structuren met hun bijzonderheden, maar ze hebben allemaal iets gemeen, ze hebben een enkel ingangspunt, dat wil zeggen, ze worden geactiveerd bij het invoeren van gegevens.

Nu zullen we de zien verschillende soorten iteratieve structuren in JavaScriptHoewel er in werkelijkheid in alle of bijna alle programmeertalen in principe dezelfde structuren zijn en dezelfde doelen dienen, is het verschil de manier waarop ze zijn geschreven, dat wil zeggen de syntaxis.

We beginnen met de iteratieve structuur, die misschien wel de eenvoudigste en ook de meest gebruikte is. We bedoelen de structuur indien.

IF-structuurIk zeg dat het de eenvoudigste is sinds de introductie van de informatie en na het te hebben geverifieerd wat ons programma doet, is dat als aan de vooraf vastgestelde voorwaarde is voldaan, we de zin of zinnen uitvoeren die u vooraf in de code hebt gedefinieerd. Aan de andere kant, als aan deze voorwaarde niet wordt voldaan, verlaat het de structuur en voert het de bijbehorende code niet uit.

Een voorbeeld met Javascript-code is het volgende:

 If (x) {waarschuwing ("De waarde is waar"); } 
Zo simpel is het. Het enige dat we zeggen is dat als de variabele die we invoeren (x) waar is, schrijf "De waarde is waar" en als het niet waar is, schrijf dan niets. Het kan ook worden uitgedrukt met If (x == true) het is erg belangrijk om de == operator die beide waarden vergelijkt met = . niet te verwarren Wat het doet, is de waarde aan de linkerkant de waarde aan de rechterkant toewijzen.

Deze structuur op zichzelf wordt gebruikt om elk type informatie-invoer op een zeer terugkerende manier te valideren, maar gaat meestal gepaard met een andere structuur genaamd anders.
Else wordt gebruikt als aanvulling op if omdat als niet aan de voorwaarde is voldaan die is vastgesteld door if en het verder gaat met else, de instructie of instructies die bij de controlestructuur horen automatisch worden uitgevoerd, zoals te zien is in het volgende voorbeeld:

 If (x) {waarschuwing ("De waarde is waar"); } else {alert ("De waarde is onwaar"); } 
Net als in het vorige voorbeeld, als de ingevoerde gegevens, x, waar zijn, schrijft u "De waarde is waar". Het verschil met het vorige voorbeeld waarin als x niet waar was, het niets deed, is dat het nu, zoals het gaat met anders, direct schrijft "De waarde is onwaar".
Dit is erg handig als de informatie alleen waar of onwaar, zwart of wit, ja of nee, of een andere binaire combinatie, of het een of het ander kan zijn. Er is echter meestal het geval waarin we willen weten of de gegevens die we invoeren voldoen aan een van de verschillende voorwaarden die exclusief zijnBijvoorbeeld als we willen weten of onze speler een verdediger, middenvelder, keeper of aanvaller is. Het zal altijd maar een van de vier dingen zijn en hier werkt het met als en anders niet voor ons.
In dit geval kunnen we de anders als structuur wat betekent het als niet. We kunnen al het andere gebruiken als we dat altijd willen na onze eerste if-structuur en vóór de laatste, die anders zal zijn, zoals we kunnen zien in de volgende code:
 If (speler == keeper) {alert ("De speler is keeper"); } else if (speler == verdediging) {alert ("De speler is verdediging"); } else if (speler == middenvelder) {alert ("De speler is een middenvelder"); } else {alert ("De speler is vooruit"); } 
Zo controleert het programma eerst of het een keeper is. Als dat zo is, schrijft het het, als het niet naar de eerste gaat, anders om te controleren of het verdediging is. Als dat zo is, schrijf het dan op. Als hij dat niet is, gaat hij naar het volgende blok om te controleren of hij een middenvelder is. Als dat zo is, schrijf het dan op. Als het geen van de drie opties is, gaat het naar het laatste blok.Wat het doet, is schrijven dat het vooruit is door weg te gooien.

De structuren die we zojuist hebben gezien, zijn uiteindelijk niet efficiënt als de controles erg repetitief zijn, in welk geval andere controlestructuren zoals terwijl of doe terwijl voor:

HerhalingslusDeze structuur is wat bekend staat als while (wat de letterlijke vertaling uit het Engels is) in de algoritmiek. En zoals de eigen betekenis zegt, is het een lus die de instructies uitvoert terwijl de voorwaarde of voorwaarden blijven waar, zolang het "waar" blijft retourneren als een waarde.
Daarom, de structuur van de genoemde lus is heel eenvoudig:
terwijl (voorwaarde)
{
instructies;
}

EEN eenvoudig voorbeeld in JavaScript het kan het volgende zijn:

 var-teller = 1; terwijl (num <5) {waarschuwing ("num"); aantal + = 1; } 
Dit is net zo eenvoudig als het toevoegen van één voor één aan onze variabele num totdat deze 5 bereikt.
Wat gebeurt er als niet aan de voorwaarde wordt voldaan voordat de lus wordt betreden?

Dat de lus nooit zal lopen. En hier komen we bij een speciaal type van de while-lus genaamd doen terwijl. Deze structuur wordt gebruikt als we willen dat het programma de lus minstens één keer betreedt. De letterlijke vertaling is doen … zolang het minstens één keer doet, ga de lus in.

Waarom komt het altijd minstens één keer in onze lus?

Omdat, zoals we hieronder zullen zien, de voorwaarde om de lus uit te voeren, wordt gedaan nadat deze is uitgevoerd. Het klinkt misschien ingewikkeld, maar we zullen zien dat het heel eenvoudig is:

 var feit = 1; var aantal = 10; doe {feit = num * feit; aantal--; } while (num> 0); waarschuwing (num); 
Het zou het voorbeeld zijn.

Wat gebeurt er in dit voorbeeld?

Die komt eerst in de lus en maakt twee instructies, waarbij het resultaat wordt vermenigvuldigd met het getal en vervolgens het getal wordt verlaagd. Dit proces herhaalt het totdat ons nummer 1 is. Schrijf bij het verlaten van de lus het nummer dat aanvankelijk 10 was en nu 1.
Deze lus kan dan precies hetzelfde worden geschreven met while. Aan de andere kant, als in de initialisatie var num = 0; komt in de lus, doet de instructies en num blijft met de waarde -1, wat niet zou gebeuren met while omdat het niet in de lus zou komen, en op deze manier heeft het het een keer gedaan.
Uiteraard is dit een heel eenvoudig voorbeeld met weinig nut, maar bij het programmeren is het erg interessant als we willen dat een menu minimaal één keer getoond wordt.

Na het zien van de while- en doe while-lus, gaan we kijken naar wat volgens mij het meest wordt gebruikt bij het programmeren. We hebben het over de beroemde lus voor.

VOOR structuurHet is de meest gebruikte lus vanwege zijn efficiëntie, hoewel het complexer is dan de vorige iteratieve structuren.
Het heeft de volgende vorm:

voor (volgorde van initialisatie; voorwaarde; volgorde van bijwerken)
{
Instructies om uit te voeren
}

En zijn bediening is heel eenvoudig:
In het eerste deel van de lus worden een of meer variabelen geïnitialiseerd, dat wil zeggen dat ze een waarde krijgen. Na de eerste puntkomma wordt de voorwaarde gedefinieerd waaraan moet worden voldaan om de instructies uit te voeren. En het laatste deel van het haakje, de update, is de waarde die wordt toegewezen aan de variabelen die zijn geïnitialiseerd.
Heel eenvoudig, zolang aan de opgegeven voorwaarde wordt voldaan, worden de instructies in de for-lus uitgevoerd. Nadat we het hebben uitgevoerd, werken we de waarde bij van de variabelen die in de voorwaarde worden gebruikt.
Nu gaan we een voorbeeld zien geschreven in Javascript:

 for (i = 0; i <10; i ++) {alert ("Het is nog steeds minder dan 10"); } 
We hebben de variabele i gemaakt en geïnitialiseerd met de waarde 0. Het is belangrijk om in gedachten te houden dat dit deel van de lus alleen de eerste keer wordt uitgevoerd, de rest van de keren houdt het er geen rekening mee omdat het slechts één keer wordt geïnitialiseerd . Onze conditiezone is zolang i kleiner is dan 10, en daarom zal onze lus zich herhalen totdat i niet langer kleiner is dan 10.
Nu komt de upgradezone in het spel. Als de waarde van i niet zou worden gewijzigd, omdat we deze op 0 hebben geïnitialiseerd, zou het een oneindige lus worden.
In onze update zone veranderen we de waarde van onze variabele. In het geval van het voorbeeld wordt elke keer dat de lus wordt uitgevoerd, de waarde van i verhoogd met 1, maar andere instructies zoals vermenigvuldigen, aftrekken, enz. kunnen ook worden ingesteld.

De for loop is erg handig in de programmeerwereld, en hoewel minder gebruikelijk, is er een speciaal geval nodig. Hoewel dit meestal wordt gebruikt bij het programmeren van objecten die al behoorlijk geavanceerd zijn, is het gebruik dat in arrays kan worden gemaakt interessant.
Lus voor in wat het doet is een array doorlopen die al zijn elementen efficiënt doorloopt. Een array gedefinieerd, de code is als volgt:

 var array = ["Eerste", "Tweede", "Derde", "Vierde"]; for (i in arrays) {alert ("Cursus: array (i)"); } 
Hij schrijft alle beschikbare cursussen van de eerste tot de vierde.

Ten slotte zullen we het hebben over een andere van de meest gebruikte stroomregelingsstructuren, namelijk de schakellus, wat betekent kiezen in het Engels.

SWITCH-lusWe gebruiken deze structuur bijna altijd wanneer we een menu willen maken met zijn verschillende opties. Het is een soort optimalisatie van de herhaling van de else if-lussen die we eerder zagen en die veel beter werkt en zonder overbodig te zijn. We gebruiken het voor die keren dat we meerdere controles van dezelfde variabele willen maken, dat wil zeggen, om een ​​kenmerk te kiezen boven een variabele die uitsluit dat het een andere heeft.

De van vorm wisselen is de volgende:

 schakelaar (letter) {geval a: instructies; pauze; geval b: instructies; pauze; geval c: instructies; pauze; geval d: instructies; pauze; standaard: instructies; pauze; } 
Aan de vorige lus wordt een variabele doorgegeven, in dit geval een letter. Het controleert deze variabele en afhankelijk van welke het binnenkomt en voert de ene of de andere instructie uit en verlaat vervolgens de lus. Om elk van de beschikbare opties van onze lettervariabele in te voeren, wordt het gereserveerde woord hoofdlettergebruik gebruikt. De lus wordt afgesloten met het break-sleutelwoord, dat is a springinstructie, die de stroom van het programma onderbreekt of wijzigt, in dit geval de lus voortijdig verlaten. Het is echter niet verplicht om dit woord in te voeren.

Op deze manier zouden we de stroom van het programma niet onderbreken en de rest van de opties controleren (waarvan we weten dat het niet waar zal zijn) dus het zal minder optimaal zijn. Het is erg belangrijk om op te merken dat: de controles worden op volgorde uitgevoerdAls we dus weten welke optie of opties het meest gebruikt gaan worden, is het beter dat we ze eerst plaatsen.
De standaardwaarde die we in de code zien, is degene die wordt gebruikt als de ingevoerde waarde in geen geval overeenkomt. In dat geval springt het automatisch naar de standaardinstelling. Het is echter niet verplicht om default in onze code op te nemen.

Vond je deze Tutorial leuk en heb je eraan geholpen?Je kunt de auteur belonen door op deze knop te drukken om hem een ​​positief punt te geven
wave wave wave wave wave