Pb récupération de variable en sortie de fonction

Par Phildz, il y a 3 ans


Décrivez ici votre problème ou ce que vous cherchez à faire.

// Calcul de la somme réduite à 1 chiffre function sommeRéduite(somme) { var arr = somme.toString().split('').map(Number); var nb_réduit = arr.reduce((a, b) => a + b, 0); console.log("nb-réduit =", nb_réduit); if (nb_réduit <= 9) { console.log("nb-réduit =", nb_réduit); return nb_réduit; } else { sommeRéduite(nb_réduit); } } var résult = sommeRéduite(55); console.log(résult);

Ce que je veux

Je voudrais récupérer la valeur de résult en sortie de la fonction "sommeRéduite".

Ce que j'obtiens

Console.log(résult) renvoie "undefined" alors que je cherche à récupérer la somme réduite de "55" qui est "1".
1ère boucle -> 5+5 = 10;
2ème boucle -> 1+0=1;
sortie de boucle -> 1

2 réponses

Pitet, il y a 3 ans

Bonjour,

Ajoute un return dans ton bloc else :

function sommeRéduite(somme) { var arr = somme.toString().split('').map(Number); var nb_réduit = arr.reduce((a, b) => a + b, 0); console.log("nb-réduit :", nb_réduit); if (nb_réduit <= 9) { console.log("nb-réduit =", nb_réduit); return nb_réduit; } else { return sommeRéduite(nb_réduit); } }
Phildz, il y a 3 ans

Bonsoir,
Génial !! ça fonctionne parfaitement bien maintenant ;)
Merci beaucoup de ta réponse :)