Quel est le meilleur moyen de compresser du code JavaScript sans présenter de problèmes de performances?

StackOverflow https://stackoverflow.com/questions/114860

  •  02-07-2019
  •  | 
  •  

Question

Je cherche un moyen de compresser le code JavaScript pour l'iPhone. Existe-t-il un moyen d’éviter d’utiliser beaucoup de temps de calcul sur un petit périphérique plutôt lent?

Était-ce utile?

La solution

Utilisez JSMin et évitez packer réellement plus consommateur de temps processeur et plus lent à" dégonfler "

Autres conseils

Utilisez le YUI Compressor

.

J'aime ShrinkSafe . Il interprète votre code dans Rhino, puis renvoie le code compressé. Comme il fonctionne avec du code interprété réel (au lieu d’évaluations complexes de chaînes), il ne rencontrera jamais de code ou ne trouvera pas de différences entre les variables publiques et privées.

C'est un outil d'excellente qualité.

Nous avons utilisé js_compactor et JavaScriptLint pour " compiler " et compresser notre JavaScript dans notre processus de construction automatisée. Une étape de construction supplémentaire consisterait à compresser le code JavaScript et à combiner les fichiers associés dans un seul package. L’augmentation des performances était importante, mais sachez que vous n’êtes pas en possession de la possibilité de déboguer.

Réduire le nombre de fichiers transmis au client vous donnera un gain de performances considérable lorsqu'il y a plus que quelques fichiers. En règle générale, les navigateurs n'ouvrent que 2 connexions à un serveur à la fois. Ainsi, même si vous transmettez des fichiers compressés et minimisés, le navigateur consacre beaucoup de temps à la vérification de son cache. yslow nous a aidés identifier pourquoi le chargement des pages était long et nous aider à concentrer nos efforts d'optimisation. Nous avons instrumenté notre environnement pour utiliser le fichiers bruts ou minimisé et versions compressées .

Je pense que Safari sur iPhone prend en charge la sortie gzip afin que vous puissiez utiliser quelque chose comme mod_deflate. J'ai eu les meilleurs résultats en utilisant cette méthode. Une bonne partie de la compression JavaScript est une véritable gâchis et prend plus de temps à décompresser qu'à télécharger un fichier plus volumineux. JSMin a l'air plutôt bien, cependant.

Vous pouvez essayer différents outils à l'adresse JavaScript CompressorRater . Tous les outils, à l'exception de Packer, n'ont aucun impact sur la vitesse d'exécution du javascript, à ma connaissance - ils suppriment uniquement les espaces, les noms renommés, etc.

.

Je considère moi-même que YUI Compressor est le meilleur.

Il est toujours utile de valider le code dans JSLint pour être sûr que le compresseur le comprend bien.

S'assurer que votre serveur Web sert correctement les éléments compressés / compressés lorsque le client le prend en charge est généralement plus efficace que de réduire le code du programme lui-même. Bien sûr, l’utilisation des deux tend à donner des tailles encore plus petites.

Je viens de vivre cette petite danse ces derniers jours. Nous avons essayé d'utiliser Packer , mais nous avons constaté que l'exécution de notre code JavaScript surchargé prenait plus de 2 secondes (et non mentionner le blocage d'autres téléchargements). Sur la base de cet article , nous sommes passés à YUI Compressor . La taille de nos fichiers compressés est non seulement plus petite, mais les temps d’exécution sont inférieurs à 300 ms.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top