|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Nouveau Membre du Club
![]() Kevin Webdesigner & Intégrateur web Inscription : mai 2011 Messages : 23 ![]() |
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 : Code :
Code :
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 |
||||
|
|
00
|
|
|
#2 | ||
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 572 ![]() |
Salut et bienvenue
Citation:
). Dans mon cas, j'ai simulé le retour de la fonction $ par un littéral, ne connaissant pas ton contexte, mais tu es sûr de ce que peut renvoyer la fonction $ ? d'où vient-elle ? jQuery ? Prototype ? fonction maison ? autre ? A toi de nous le dire et même surtout de vérifier dans la doc. de la librairie le cas échéant. En tout cas inspecte un peu ce que tu récupères dans les deux cas ("un" ou "deux" éléments) avec Firebug et tu en auras le coeur net ^^En outre, on pourrait faire remarquer que cette fonction n'a en réalité pas grand chose à f*** dans un test de boucle for Remplace-là par autre chose et tu verras que la boucle se comporte très bien.Citation:
(écriture impec, sympa, curieux, balises code autour des extraits...... on croit rêver ^^ )
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
||
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Matilin TorreÉtudiant Inscription : juin 2010 Messages : 679 ![]() |
Bonsoir !
Ce problème m'intrigue moi aussi. Juste une remarque en passant : dans la première variante de la boucle, _len est locale (déclarée avec var), alors qu'elle est globale dans la seconde. A priori, ça ne devrait pas influer, mais comme je ne vois pas ce qu'il y a dans la boucle… NB: Ce genre d'initialisation de boucle est correct : Code JS :
for (var _i = 0, _len = elems.length; _i < _len; _i++) …
__________________
Disposition de clavier ergonomique française : Bépo |
|
|
00
|
|
|
#4 | ||
|
Nouveau Membre du Club
![]() Kevin Webdesigner & Intégrateur web Inscription : mai 2011 Messages : 23 ![]() |
Oh la la, je suis vraiment désolé pour ce post inutile, dans mon code original j'ai mis _Len au lieu de _len dans la condition. Faut que je change mes p***** de lunettes, ça devient urgent
@RomainVALERI: Merci beaucoup pour le compliment. Quoi qu'il en soit, il n'y avait pas de contexte, j'avait totalement isolé le problème. De plus, comme tu me l'as fait remarquer, j'avais pas précisé que j'utilise jQuery qui, avec $(), renvoie un tableau contenant les éléments sélectionnés. Si je boucle sur ce tableau, c'est pour une question de performance (je suis sur une app avec pas mal de JavaScript), ça m'évite tous simplement d'utiliser $.each() qui est plus gourmande. exemple fictif : Code :
|
||
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Kevin Webdesigner & Intégrateur web Inscription : mai 2011 Messages : 23 ![]() |
Hum, je sais pas trop mais dans le cas présent, je doit mettre délestage non? Il n'y a pas d'intérêt de garder ce post je pense.
|
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Matilin TorreÉtudiant Inscription : juin 2010 Messages : 679 ![]() |
Si si, il nous rappelle à tous le formidable potentiel de nuisance de la faute de frappe
![]() Sérieusement, c'est toi qui vois. Enfin je suis pas modo mais je pense pas qu'on soit à ce point après la moindre économie d'espace disque sur ce forum
__________________
Disposition de clavier ergonomique française : Bépo |
|
|
00
|
|
|
#7 | ||
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 572 ![]() |
Citation:
Citation:
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
||
|
|
00
|
|
|
#8 |
|
Nouveau Membre du Club
![]() Kevin Webdesigner & Intégrateur web Inscription : mai 2011 Messages : 23 ![]() |
Ok, je met résolu alors, comme ça, ça éviteras au contributeurs de passer par là, mais ça rappelleras quand même aux autres que de toute façon, ils ne sont pas à l'abris de cette nuisance particulièrement énervante je trouve. Même avec de l'expérience, ça peut toujours arriver.
@RomainVALERI : Merci tu panse la plait de mon ego |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com