Im un programmeur débutant qui a obtenu la fonction ci-dessous de Stoyan Stefanovs orienté objet JavaScript Book. Il dit que si vous appelez trois fois, il affichera "a" et "b" puis "c". Quand je l'ai essayé dans la console firebug, il me donnait toujours un "a", donc c'est une question (a) c'est-à-dire y a-t-il quelque chose à propos de firebug qui expliquerait mon résultat?Utilisation de Firebug et jsfiddle.net pour tester une fonction
Ensuite, j'ai essayé de l'exécuter dans jsfiddle.net mais il ne sortira rien. http://jsfiddle.net/mjmitche/SkSMm/
I m sure I
Je fais quelque chose de mal, mais quoi? S'il vous plaît expliquer si vous le pouvez. Note, j'ai fait ensuite(); et a obtenu A, et ensuite je l'ai fait ensuite(); encore et a obtenu «un» et suivant(); encore et obtenu «un». En d'autres termes, le compteur ne s'est pas souvenu de t change or didn
.
function setup(x) {
var i = 0;
return function() {
return x[i++];
};
}
var next = setup(['a','b','c']);
next();
mais vous avez seulement appelé next() une fois. essayez de l'appeler trois fois comme suivant(); prochain(); prochain(); et cela devrait montrer votre résultat attendu – corroded