2016-06-22 1 views
0

Je suis en train d'accumuler une série de chiffres dans un tableau e6valeurs cumulables est un tableau - Javascript

Voici le code correspondant.

e3 = prompt(e1 + ", Please enter few numbers (maximum of 6) separated by commas", "1,2,3,4,5"); 
e6 = e3.split(','); 

for(var a=0;a <= e6.length ;a++) { 

     e9=e9 + +e6[a]; 

    } 
document.write(e9) ; 

Cependant, ce qui s'est imprimé est NaN au lieu de la somme par défaut de 15. Toutes les idées comment fixer? Je vous remercie.

Modifier: J'ai oublié de mentionner que j'avais déjà déclaré toutes mes variables plus tôt.

var e1,e2,e3,e4,e5,e6,e7,e8,e9,e10,e11; 

Édition2: Voici tout mon travail en action. https://jsfiddle.net/nhz0Lnx8/

+2

Déclarez vos variables avec 'var' et initialisez' e9' à '0'. – Pointy

+0

@Pointy Pas de chance. 'var a = 0; e9 = 0; ' – andirew1990

+0

@ andirew1990 À partir de votre violon (édition n ° 2), il semble que vous ayez résolu ce problème. Est-ce exact? –

Répondre

0
var e3 = prompt("Please enter few numbers (maximum of 6) separated by commas", "1,2,3,4,5"); 
var e6 = e3.split(','); 

var e9 = 0; 

for(var a=0;a < e6.length ;a++) { 

     e9 += parseInt(e6[a]); 

    } 
document.write(e9) ; 
+0

N'a rien changé. Toujours afficher NaN – andirew1990

+0

Veuillez vérifier maintenant. Fonctionne bien pour moi maintenant. –

+0

N'affiche plus rien du tout dans document.write (e9). J'ai oublié de mentionner que j'ai déjà déclaré toutes mes variables plus tôt. modifiera le message principal. – andirew1990

1

vous devriez regarder plus loin que e6.length-1, mais la meilleure solution est d'éviter l'arrêt par une erreur.

var e3 = prompt("Please enter few numbers (maximum of 6) separated by commas", "1,2,3,4,5"); 
var e6 = e3.split(','); 

var e9 = 0; 
e3.split(',').map((x)=>{e9 += +x}) 
document.write(e9) 
+0

Ceci est pour une classe, je ne pense pas qu'il serait approprié d'utiliser certains des outils que vous avez suggérés tels que map ou le => car nous n'en avons pas encore discuté. Merci pour votre effort si. – andirew1990

+0

ahh accident merci! – Folashade

1

l'erreur est dans la déclaration de la boucle: "un < = e6.length" devrait être "un < e6.length" ("inférieur ou égal égal" devrait être changé en "inférieur à")