Problème de boucle infinie

Résolu
greg3487
Messages postés
17
Date d'inscription
dimanche 20 septembre 2015
Statut
Membre
Dernière intervention
11 février 2016
- 30 janv. 2016 à 22:25
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

2 réponses

KX
Messages postés
16568
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
5 juillet 2022
124
30 janv. 2016 à 22:40
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...
0
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
merci de ta réponse, j'avait pas fait attention.
0