IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Sortir d'une boucle avec break


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Ingénieur en électrotechnique retraité
    Inscrit en
    Décembre 2008
    Messages
    1 718
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur en électrotechnique retraité

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 718
    Par défaut Sortir d'une boucle avec break
    Bonjour et meilleurs vœux à tous,
    Je n'arrive pas à sortir de la boucle forEach en utilisant break;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function saveDate() { // callBack for calendar
    	tabForms.forEach(function(curForm){
    		let idId = curForm.querySelector("[name*='id'");
    		console.log(idId.value);
    		if (idId.value == 0)
    			break forEach;
    		if (idId.value !=0) { // value=0 means a new element
    			console.log(idId.value);
    			curForm.submit();
    		}
    	}, false );
    }
    J'obtiens une erreur "Uncaught SyntaxError: Undefined label 'forEach'".
    Si j'enlève l'étiquette, l'erreur est "Illegal break statement".
    Je ne comprends pas comment étiqueter ma boucle pour faire fonctionner.

  2. #2
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 124
    Par défaut
    Salut

    Je suis étonné de cette syntaxe break forEach;, pourquoi forEach, a vérifier en regardant l'aide PHP qui ne donne pour paramètre un argument numérique.
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Membre Expert
    Avatar de Doksuri
    Profil pro
    Développeur Web
    Inscrit en
    Juin 2006
    Messages
    2 486
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 486
    Par défaut
    break forEach;
    pour utiliser un label sur un break, il faut avoir defini une region avant (ce qui n'est pas ton cas)
    soit tu fais juste un break;, soit tu definis ta region "forEach" quelque part en amont

    ps : ProgElecT, c'est pas du php
    La forme des pyramides prouve que l'Homme a toujours tendance a en faire de moins en moins.

    Venez discuter sur le Chat de Développez !

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    Bonjour,
    on ne quitte pas une boucle forEach, sauf à générer une erreur, dû au fait que c'est une fonction callback qui est exécutée à chaque itération.

    Ressource :
    Array.prototype.forEach(), idem pour NodeList.forEach, il faut utiliser un autre type de boucle, voir la Note, en milieu de page, sur le lien.

  5. #5
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 124
    Par défaut
    Désolé, j'ai cru être encor dans le forum PHP au moment de ma rédaction
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  6. #6
    Membre éprouvé
    Homme Profil pro
    Ingénieur en électrotechnique retraité
    Inscrit en
    Décembre 2008
    Messages
    1 718
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur en électrotechnique retraité

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 718
    Par défaut
    Merci pour vos réponses qui m'ont éclairé.
    J'ai complètement réécris mon code. Je teste la condition avant et je n'exécute forEach que si la condition est remplie.
    @Doksuri
    C'est ce que j'ai cherché à faire en lisant la doc MDN sans y parvenir.
    @NoSmoking
    En cherchant dans la doc, je ne me souviens pas avoir vu cette note. Soit je ne suis pas exactement tombé sur cette page, soit j'ai zappé la note.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Sortir d'une boucle de parcour d'un Recordset
    Par Mariboo dans le forum IHM
    Réponses: 2
    Dernier message: 12/06/2006, 18h07
  2. Faire une boucle avec des variables vides ?
    Par byloute dans le forum Linux
    Réponses: 5
    Dernier message: 23/02/2006, 09h33
  3. Sortir d'une boucle en fonction d'une durée
    Par BECHE dans le forum Langage
    Réponses: 8
    Dernier message: 30/11/2005, 11h08
  4. [DEBUTANT] sortir d'une boucle avec un touche particulière
    Par thibouille dans le forum Débuter
    Réponses: 4
    Dernier message: 25/10/2005, 06h44
  5. SORTIR D'UNE BOUCLE
    Par chekibperl dans le forum Langage
    Réponses: 2
    Dernier message: 22/10/2005, 12h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo