Problème de boucle infinie [Résolu]

Messages postés
17
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
11 février 2016
- - Dernière réponse : greg3487
Messages postés
17
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
11 février 2016
- 31 janv. 2016 à 08:00
Bonjour,

je suis en train de faire les exercice de codecacademie, et sur un exercice que j'ai fait, je me retrouve avec une boucle infinie.

pouvez vous m'aider a arrêter cette boucle infinie pour quelle fonctionne correctement, elle doit retrouver un nom parmi une chaîne de caractère.

var texte = "bonjour a tous, yann c'est moi";
var monNom = "yann";
var trouve = [];

for (var i = 0; i < texte.length; i++) {
    if (monNom[0] === texte[i]) {
        var long = monNom.length;
        for(var j = i; long = long + j, j < long; j ++) {
            var lettre = texte[j];
            trouve.push(lettre);
        }
    }
}
console.log(trouve);


merci par avance, pour vos reponce
Afficher la suite 

2 réponses

Messages postés
15998
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
15 juin 2019
85
0
Merci
Bonjour,

Je pense que l'erreur est là :
for(var j = i; long = long + j, j < long; j ++)

Puisque que tu augmentes la valeur de long avec long+j tu as toujours j<long d'où la boucle infinie.

Remarque : c'est bizarre que tu n'ais pas une erreur de syntaxe ici car normalement la deuxième partie de la boucle for devrait être un booléen...
Commenter la réponse de KX
Messages postés
17
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
11 février 2016
0
Merci
merci de ta réponse, j'avait pas fait attention.
Commenter la réponse de greg3487