Boucles dans le Javascript


  Share  
|


Les boucles dans le Javascript sont semblables aux boucles dans C++ et Java et à la plupart des autres langues utilisant des structures de boucle. Dans cette section, vous trouverez des explications des différents types de boucles dans le Javascript et les suggestions où ils sont typiquement employés le plus effectivement dans un manuscrit.

Pour la boucle

Une des boucles les plus utilisées et les plus familières est pour la boucle. Cette boucle réitère par un ordre des rapports pendant un certain nombre de fois déterminées par une condition. La condition peut être une constante basée sur une coquille numérique (un nombre) ou une constante (c'est-à-dire, une constante de maths), ou la boucle peut être variable selon le compte dans la variable. Le format général est montré ici :

pour (valeur de début ; état d'arrêt ; incrément/décroissance) {
      Rapports 
      } 

La valeur de début est la valeur initiale d'une variable de compteur. La première fois par la boucle, la contre-valeur sera basée sur la valeur de début. L'état d'arrêt est un essai pour déterminer si la contre- variable a rempli la condition qui termine la boucle. L'incrément/décroissance détermine combien a été ajouté ou soustrait de la variable de compteur. Une utilisation typique pour une boucle est d'examiner des caractères dans une corde. La longueur de la corde est employée comme état d'arrêt, et chaque caractère est basé sur sa position linéaire dans la corde.

<html> 
<head> 
<title>For Loop</title> 
language= " Javascript " de <script > 
la variété trouvée = « email address est @ symbole absent.  » ; 
emailAd=prompt de variété (« écrivez svp votre email address :  », "") ; 
pour (variété counter=0 ; contre- <= emailAd.length ; counter++) {
charAt de //The (n) la fonction regarde le caractère « n » dans la corde 
            variété findAt=emailAd.charAt (contre-) ; 
                  si (@") de findAt== " {
                              le found= " email address a @ le symbole " ; 
                  } 
} 
document.write (trouvé) ; 
</script> 
</head> 
bgColor= <body " powderblue " > 
</body> 
</html>

Puisque la longueur de la corde est une variable, l'état d'arrêt emploie la longueur de la corde plutôt qu'une valeur littérale. Dans cet exemple particulier, tout ce que le manuscrit essaye de faire est de vérifier si l'utilisateur s'est rappelé de mettre dans « @ » quand elle a écrit son email address.

La boucle de for/in

Un deuxième format utilisé avec pour le mot-clé dans une boucle est pour/dans le rapport. Quand pour/dans le rapport est employé, le compteur et l'arrêt sont déterminés par la longueur de l'objet. Le format général est montré ici :

pour (contre- variable dans l'objet) {
      Rapport 
} 

Vous n'avez pas besoin de savoir le nombre de propriétés dans l'objet en utilisant pour/dedans parce que le rapport commence par 0 comme valeur initiale d'un contre- variable et termine la boucle quand toutes les propriétés des objets ont été épuisées. Par exemple, utilisant un objet de rangée, la boucle suivante commence par le premier élément de la rangée appelée avion et continue à faire une boucle jusqu'à ce que plus d'éléments ne soient trouvés dans la rangée :

<html> 
<head> 
<title>For Loop</title> 
language= " Javascript " de <script > 
"" d'airFlock= de variété ; 
avion de variété = nouvelle rangée (« Cessna », « joueur de pipeau », « Maule », « Mooney », « Boeing ») ; 
pour (compteur de variété dans l'avion) {
      avion de l'airFlock += [contre-] + « <br> » ; 
} 
document.write (airFlock) ; 
</script> 
</head> 
bgColor= <body " powderblue " > 
</body> 
</html>

Puisque les variables sont des objets dans le Javascript, chaque caractère d'une variable de corde est une propriété de la variable. Récrivant le manuscrit employé pour illustrer comment a pour la boucle fonctionne, pour suivant/dans la boucle exige d'un rapport plus simple d'arriver aux mêmes résultats :

<html> 
<head> 
<title>Search For/In</title> 
language= " Javascript " de <script > 
complete= de variété " vous manquez @ le caractère dans votre email address. « ; 
emailAd = message de sollicitation de variété (« écrivez votre email address », "") ; 
pour (compteur de variété dans l'emailAd) {
      si (@") de contre-] == d'emailAd [" {
            complete= " vous avez inclus votre @ caractère. « ; 
      } 
} 
document.write (complet) ; 
</script> 
</head> 
bgColor= <body " aliceblue " > 
</body> 
</html>

Utilisant pour/dans la boucle dans les cordes simples est juste comme efficace que son utilisation dans d'autres objets qui contiennent des propriétés.

La boucle de moment

La boucle de moment commence par un état d'arrêt et continue à faire une boucle jusqu'à ce que la condition d'arrêt soit remplie. La contre- initialisation variable et le contre- incrément/décroissance sont manipulés dans le contexte du rapport de moment (c'est-à-dire, dans les croisillons bouclés), mais ils ne sont pas une partie du rapport initial elle-même. Le format général pour la boucle de moment est montré ici :

déclaration de valeur initiale 
tandis que (état d'arrêt) {
      rapports 
      rapport d'incrément/décroissance 
} 

Tant que la condition d'arrêt n'est pas remplie, les rapports sont exécutés et la contre- variable augmente ou diminue en valeur. L'exemple suivant illustre contre- décrémenter variable dans les étapes de 5 :

<html> 
<head> 
Loop</title> <title>While 
language= " Javascript " de <script > 
compteur de variété = 50 ; 
"" de teamGroups= de variété ; 
tandis que (contre- > 0) {
      teamGroups += " équipe « + contre- + « <br> » ; 
      compteur - = 5 ; 
} 
document.write (teamGroups) ; 
</script> 
</head> 
bgColor= <body " sarcelle d'hiver " > 
</body> 
</html>

Le rendement à l'écran est comme montré :

Équipe 50 
Équipe 45 
Équipe 40 
Équipe 35 
Équipe 30 
Équipe 25 
Équipe 20 
Équipe 15 
Équipe 10 
Équipe 5

Le fait qu'aucune équipe 0 n'existe est important. Dès que l'état d'arrêt a renvoyé un faux booléen, la boucle a été immédiatement terminée et le manuscrit a été sauté au-dessus des rapports dans la boucle et a exécuté la prochaine ligne. A eu l'état d'arrêt été ceci, une équipe 0 aurait été inclus dans le rendement :

tandis que (contre- >= 0) {

La boucle de do/while

À la différence de la boucle de moment, faites/tandis que la boucle exécute toujours des rapports dans la boucle dans la première itération de la boucle. Au lieu de l'état d'arrêt étant au dessus de la boucle, elle est au fond. Le format général ressemble à ce qui suit :

faites {
        rapports 
        contre- incrément/décroissance 
} tandis que (état d'arrêt) 

Le mot-clé tandis qu'est en dehors des croisillons bouclés commencer après font le mot-clé. Puisque les rangées sont utilisées généralement avec des boucles, les expositions suivantes a font/tandis que boucle extrayant les propriétés d'une rangée :

<html> 
<head> 
<title>Do/While Loop</title> 
language= " Javascript " de <script > 
rangée de bigCities= de variété nouvelle (« Pékin », « Tokyo », « Mexico », « New York », « visibilité directe 
Angeles ", « Londres », « Berlin », « Bloomfield ») 
variété counter=0 ; 
"" de metropolis= de variété ; 
bigCities.sort () ; 
faites {
      bigCities de la métropole += [contre-] + « <br> » ; 
      counter++ 
} tandis que (contre- < bigCities.length) 
document.write (métropole) ; 
</script> 
</head> 
bgColor= <body " cornsilk " > 
</body> 
</html>

Le rapport de tri, bigCities.sort (), met les éléments de tableau dans l'ordre alphabétique avant que la rangée soit placée dans la boucle. Alors la boucle réitère jusqu'aux contre- retours de variable un faux booléen basé sur la longueur de la rangée. Puisque les éléments ont été classés par ordre alphabetique, le rendement est classé par ordre alphabetique, comme les expositions suivantes :

Pékin 
Berlin 
Bloomfield 
Londres 
Los Angeles 
Mexico 
New York 
Tokyo

 

un article a soumis par George Freedrich


Share  

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