26 avril 2016
2
26
/04
/avril
/2016
15:48
Ils vous est certainement arrivé de trouver qu'une page est très lente et soudain, Firefox vous demande si vous voulez arrêter un script qui semble prendre beaucoup de temps.
En examinant un script jquery.ui, qui sont quand même des outils très utilisés pour améliorer les pages web, je suis tombé sur ce genre de boucle :
for ( i = 0; i < set.length; i++ ) { ... }
Les gens qui ont écrit ce script ne se rendent pas compte que la longueur de set va être recalculé à chaque i, alors qu'en écrivant
for (i = 0, len = set.length; i < len; i++) { ... }
ou
var len = set.length;
for (i = 0, ; i < len; i++) { ... }
on améliore énormément le temps de traitement puisque cela va être calculé une seule fois au début.