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 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 127
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
Rejoignez-nous