Bonjour,
après quelques heures de recherche à tourner le code dans tous les sens, je poste ce message car je ne comprends pas là où j'ai faux.
Je suis le cours de grafikart sur youtube concernant le javascript. J'essaie de refaire un exercice de fonction de cette vidéo (l'exercice en question est à 6'11)
Très brièvement le but de l'exercice est de créer une fonction pour extraire tous les élèves de deux tableaux (classes) ayant la moyenne.
Mon problème est que lorsque je fais (à priori) la même chose que lui, ce ne sont pas tous les élèves de mes deux tableaux qui s'affichent dans la console quand j'appelle la fonction mais seulement le dernier de chaque tableau et en plus si il a la moyenne. C'est-à-dire que dans le code que je copie colle ici le résultat retourné est seulement "jo a la moyenne" (la dernière entrée de mon tableau B et qui a une moyenne supérieure à 10). Par contre, si je mets 14 de moyenne à Loic au lieu de 1 (qui est la dernière entrée de mon tableau A), là ça m'affiche "Loic a la moyenne""Jo a la moyenne".
Mais je n'arrive pas avoir les autres élèves ayant la moyenne. Quelqu'un aurait une idée de ce qui va pas dans mon code (j'ai essayé de recopié caractère par caractère le code de la vidéo mais j'ai peut-être encore une erreur après m'être 84 fois).
Merci à vous
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 var classA = [{ nom: 'marc', moyenne: 15 }, { nom: 'marion', moyenne: 8 }, { nom: 'antoine', moyenne: 4 },{ nom:'sophie', moyenne : 17 },{ nom:'loic', moyenne:1 }] var classB = [{ nom: 'fred', moyenne: 15 }, { nom: 'lin', moyenne: 8 }, { nom: 'jo', moyenne: 11 }] function quiALaMoyenne(eleves){ for (var i=0; i<eleves.length;i++) var eleve=eleves[i] if (eleve.moyenne>=10){ console.log (eleve.nom + ' a la moyenne')} } quiALaMoyenne(classA) quiALaMoyenne(classB)
Partager