« Programmation JavaScript/Structures de contrôle » : différence entre les versions
Contenu supprimé Contenu ajouté
→Utilisation de break : comment ça, discutable ?? |
|||
Ligne 162 :
De même que <code>continue</code>, <code>break</code> peut être suivi du nom d'une étiquette. Dans ce cas, l'exécution continue après la structure désignée par l'étiquette, pas après la boucle qui contient directement l'instruction <code>break</code>.
=== Étiquettes ===
Une étiquette est un identifiant suivi de ':' (deux points). On peut la placer avant une instruction ou une structure de contrôle.
Il n'y a '''pas''' d'instruction <code>goto</code> en JavaScript. Les étiquettes servent exclusivement à affiner l'utilisation de <code>break</code> et <code>continue</code> (voir plus haut).
<source lang="javascript">
str = "Liste des objets :\n"
annuler = false
parcoursListe : for(i in liste)
{
if(!liste.hasOwnProperty(i))
continue // passe à l'itération suivante dans cette boucle
str+="\n• L'élément «"+i+"» de la liste contient :\n"
if(annuler)
{
str+="\nopération annulée."
break // reprend l'exécution immédiatement après cette boucle
}
parcoursProps : for(j in liste[i])
{
if(!liste[i].hasOwnProperty(j))
continue // passe à l'itération suivante dans cette boucle
if(annuler)
{
str+="\nopération annulée."
break parcoursListe // reprend l'exécution immédiatement après la boucle extérieure
}
str+="- "+j+" = "+liste[i][j]+"\n"
}
}
</source>
=== for ===
|