如何清理未引用的Javascript库

时间:2010-01-15 17:28:02

标签: javascript

我们的项目有超过300个JSP文件和200多个JavaScript文件。我想做一些清理,删除不必要的JS文件。即使JSP包含JS,也许没有使用任何函数。目标是减少加载页面所需的复杂性和时间。我的IDE是Eclipse。给出JavaScript的动态特性我想这很难甚至是不可能的。

2 个答案:

答案 0 :(得分:2)

如果可以想象应用程序可以通过大量覆盖测试(即遍历每个对话框,错误消息和可以想象的情况),您可以使用访问日志文件 - 将JS文件列表与那些经过大量使用的时期x后的那些。

另一种实现方法是设置“蜜罐”(参见我对this question的回答)。

这两种方法当然都是“软”的,因为它们的质量取决于在测试时间内应用程序的实际使用程度。

如果您有grep ping任何脚本引用的方式,那将是更好的选择。也许你可以在{anything}.js上进行全局搜索,这与大多数嵌入JS文件的方式相匹配。

答案 1 :(得分:1)

要了解项目中使用的功能和javascript文件,您需要代码覆盖率工具,例如JSCoverageCode coverage for Firebug。这些工具将返回使用的函数和使用的文件。使用像Selenium或随机测试这样的自动化测试套件可以让你很好地了解加载了哪些文件。

如果文件是动态加载的,您还可以使用Firebug或Fiddler来记录JS文件的请求。

不幸的是,如果你想要确定性,而不仅仅是使用上述工具获得极高的可能性,你必须为整个webapp生成一个调用图,可能使用Javascript编译器,如Rhino ......