Geneste Loops, etiket en blijven Verklaringen


  Share  
|


De label verklaring is niet inherent gaan met de verder verklaring, maar, zoals het bespreken pauze met schakelaar en geval, Zou u het nuttig vinden om te zien de verklaringen die in een onderlinge samenhang. Ook typisch geneste lussen zijn geschreven, zonder dat label of verder verklaringen, maar ze dienen als een bruikbare structuur om te helpen uitleggen hoe effectief te gebruiken verder.

Voor het grootste deel, ik niet gebruiken verder omdat, zoals de pauze verklaring, kan het signaal slordig programmeren praktijken en slechte planning. Echter, wanneer de juiste wijze en in de juiste context gebruikt, verder kan een waardevolle programmering optie. De verklaring springt uit volgorde in een lus structuur, maar in tegenstelling tot pauze, Die de lus uitgangen, verder springt het testen van de beëindiging toestand van de lus, effectief sla de huidige iteratie van de verklaringen binnen de lus.

Overweeg een programma waarin een honkbalteam sequentieel wordt gegeven trui nummers, met uitzondering van de nummers van speciaal erkende spelers wier nummers zijn pensioen. Binnen een lus, de verder verklaring kan springen naar het begin van de lus wanneer een van de gepensioneerde nummers zijn te vinden in de lus. Bovendien hebt u meer dan een team, en het tweede team heeft hetzelfde aantal spelers en gebruikt dezelfde trui nummers. De eerste lus (buitenste) houdt van de teams, en de tweede lus (innerlijke) houdt van de spelers en truien die ze zullen krijgen. Wanneer een lus woont in een andere lus, het is wel een geneste lus.

In JavaScript, labels zijn geen verklaringen, maar identificatiemiddelen. Als u ooit hebt geprogrammeerd in Basic, waarin regelnummers of etiketten worden gebruikt voor verwijzing naar een regel code, weet je wat labels zijn. Zij zijn plaatsen in het script waar het programma kan bijkantoor indien een verklaring zegt het te doen. Het formaat voor een label is als volgt:

label: verklaringen

In sommige opzichten kan, etiketten worden gebruikt als opmerkingen om u te helpen organiseren van uw scripts, maar ze kunnen ook worden gebruikt in combinatie met verder Als u het programma om de gelabelde gedeelte van het script uit te voeren. Omdat de verder verklaring kan alleen worden gebruikt in lussen, het labelen van de lussen helpt bij de controle wat het programma zal doen. In het volgende script, zijn de twee lussen label team en Jersey. Binnen Jersey lus is een voorwaardelijke verklaring met behulp verder dat de gepensioneerde team cijfers niet worden gebruikt. Merk op dat de verder verklaring commando's een sprong naar het begin van de Jersey lus, niet de team lus. Nadat u het script uitvoert, verandert het label naast verder van Jersey aan team.

 Gebruik Doorgaan en etiketten 

Het script output moet er als volgt uitzien:

Team1 Lid 1 Jersey Number 20 Team1 Lid 2 Jersey Nummer 21 Team1 Lid 3 Jersey Number 23 Team1 Lid 4 Jersey Number 24 Team1 Lid 5 Jersey Number 25 Team1 Lid 6 Jersey Number 26 Team1 Lid 7 Jersey Number 27 Team1 Lid 8 Jersey Nummer 28 Team1 Lid 9 Jersey Number 31 Team1 Lid 10 Jersey Number 32 Team1 Lid 11 Jersey Number 33 Team1 Lid 12 Jersey Number 34 Team2 Lid 1 Jersey Number 20 Team2 Lid 2 Jersey Number 21

Het eindigt met de 12, en begint dan met de 1.

Merk op hoe alle van de gepensioneerde trui nummers werden weggelaten in de opdrachten voor beide teams. Verander nu deze lijn:

blijven trui; 

aan

voortgezet team; 

Wanneer u het programma een tweede keer uitvoeren, de output toont alleen de volgende vier lijnen:

Team1 Lid 1 Jersey Number 20 Team1 Lid 2 Jersey Nummer 21 Team2 Lid 3 Jersey Number 20 Team2 Lid 4 Jersey Number 21

De reden dat het tweede script produceert slechts vier lijnen in het browservenster is dat, zodra de eerste gepensioneerde nummer werd ontdekt, het programma vertakt naar de buitenste lus (team), verhoogd, wordt de waarde van de teller, en eindigde toen de tweede gereserveerde aantal werd gevonden, omdat het de beëindiging voorwaarde had bereikt. Dus, zoals je kunt zien, afhankelijk van het etiket van de verder verklaring takken, zijn zeer verschillende uitkomsten geproduceerd.

 

een artikel afkomstig van George Freedrich


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions