Bonjour,
Je suis toujours en quête de vraiment optimiser mon code et en faisant des tests, je me suis rendu compte d'un truc que je ne comprend pas.
En effet, pour une boucle for générique qui peut être utilisée pour n éléments, dans le cas particuliers de 1 seul élément, selon comment elle est écrite, elle ne réagit pas pareil.
Si on stocke préalablement la taille du tableau à boucler, la boucle s'execute 2 fois au lieu d'une :
Par contre si on ne stocke pas, aucun problème dans ce cas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 // S'execute 2 fois si 1 élément, log _i = 0 et _i = 1 var elems = $('untag'); var _len = elems.length; for(_i = 0; _i < _len; _i++) { } // Ou exactement pareil var elems = $('untag'); for(_i = 0, _len = elems.length; _i < _len; _i++) { }
Ce n'est pas un problème important mais ça intrigue fortement ma curiosité quand même, je viens juste vous demander si quelqu'un aurait une explication qui m'aurait échappé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 // S'execute une seule fois si 1 élément, log _i = 0 var elems = $('untag'); for(_i = 0; _i < elems.length; _i++) { }
Note: J'ai pas tester sur IE. Juste FF, Chrome et Safari.
Merci d'avance.
PS: C'est mon premier post sur Developpez, si j'en fais trop ou pas assez dites moi![]()
Partager