结合javascript文件有助于加快IE8中的网站速度吗?

时间:2010-09-20 19:45:18

标签: javascript optimization web performance httprequest

PageSpeed和Yslow建议组合javascripts文件以减少HTTPRequest。但这是因为(我认为)pre ie8浏览器不超过2个serverhost连接。

但是现在,浏览器有6个serverhost连接,这意味着它有并行下载javascripts。那么就说我们有1MB的javascript,我们应该把它分解成6个不同的大小相同的文件以获得最大的下载速度吗?请告诉我。

Micahel.S

4 个答案:

答案 0 :(得分:3)

不,因为每个HTTP请求都涉及开销(如果使用流水线,则较少)

答案 1 :(得分:0)

大多数浏览器无论如何都会缓存您的JavaScript文件,因此在第一页加载后,无关紧要。

但是,您应该在逻辑上以最能帮助您进行开发的方式拆分JavaScript,因为浏览器允许的同时连接数会有所不同。

为了提高速度,您可以对代码进行模糊处理(通过最小化例程)并以一种没有人耐心阅读的方式提供服务。

答案 2 :(得分:0)

你的问题的答案是否定的。但是,假设您能够在仅使用IE8的完全隔离的环境中(例如公司内部网)提供内容,那么您的问题的答案就变为:否。

由于您不是为IE6-7设计,我假设您处于一个孤立的环境中(否则您的设计决策很糟糕)。在这种环境中,是的,你可能会看到打破JavaScript文件带来的好处,但我建议不要这样做。

为什么呢?由于您正在优化速度,我假设您将JavaScript放在HTML文档中body标签的底部,以防止JS阻止DOM的下载。这是使页面看起来加载速度更快的基本做法。但是,通过将内容放在身体的底部,您的问题就没有实际意义了。由于DOM不再被脚本标记阻止,因此使用并行下载可以实现的任何速度优势都会在用户身上丢失,因为他们会在浏览器请求JavaScript文件之前看到页面加载。

tl; dr:将JS分解为多个文件进行并行下载没有实际的速度优势。

答案 3 :(得分:0)

拆分文件不会产生太大的差别。如果你想在生产环境的下载时间方面看到性能提升,我总是使用YUI Compressor(http://developer.yahoo.com/yui/compressor/)来尽可能减小我的JS文件大小然后提供js的gzip压缩版本支持它的浏览器。

在开发环境中,你不应该太担心它。只需根据它们的用途对它们进行逻辑分割,这样它们就可以更容易地工作,然后在准备就绪后将它们整合到一个文件中并优化生产。