2009-08-10 11 views
1

Ceci est une question double à ce qui suit:extracteur JavaScript: fonctions d'extraction/objets qui sont réellement utilisés dans une page Web à partir d'une bibliothèque

JavaScript stripper: remove functions/objects that are not used in a web page

Pour maximiser mes chances d'obtenir mon problème résolu, I Je pose la question de manière opposée:

Toutes mes pages Web utilisent une bibliothèque JavaScript, pour améliorer les performances de mes pages Web, je n'inclurais que les fonctions/objets nécessaires de la bibliothèque pour chaque page. Je suis à la recherche d'un outil capable de faire l'extraction intelligente automatiquement.

Merci pour votre aide,

Yu

Répondre

2

Etes-vous sûr que c'est un vrai problème?

La raison pour laquelle je demande est parce qu'il ne devrait pas être un problème d'inclure la même bibliothèque JavaScript complète sur chaque page. En fait, desservant différentes versions de la bibliothèque à chaque page ralentir réellement votre site.

La raison est que JavaScript est mis en cache par le navigateur. Si chaque page demande la même bibliothèque, ils doivent télécharger la bibliothèque de votre site après la première fois.

La clé consiste à s'assurer que votre bibliothèque est envoyée avec un en-tête HTTP Expires qui indique au navigateur de mettre en cache la réponse.

0

Vous le faites mal. Des versions séparées d'une bibliothèque javascript pour chaque page est une mauvaise idée puisque la bibliothèque ne sera pas mise en cache mais récupérée séparément pour chaque page. Il vaut mieux réduire, concaténer et GZIP vos scripts et servir exactement le même fichier de script pour toutes les pages. Cependant, si vous avez besoin de savoir quelles lignes sont réellement exécutées, vous pouvez probablement trouver en utilisant JSCoverage.