我想知道为什么我们应该结合 Javascript 和 CSS 文件,因为它只是在第一页加载时的优势。在所有后续请求中,都会从客户端浏览器缓存中加载 JS/CSS。那么它应该没有性能差异,还是我完全错了?
问问题
1849 次
1 回答
4
有几个原因:
- 浏览器通常会限制它们可以同时向给定站点发出多少 HTTP 请求(出于礼貌,而不是出于任何真正的技术限制),并且您不一定希望 scriptC.js 和 Z.css 持有up scriptA.js 和 A.css;
- 每个单独的 HTTP 请求都有延迟和带宽开销,即使它是一个“条件 GET”,会导致一个“304 - 未修改”响应;
- 缓存确实会不时失效。在 HTTP 中,到期的确切时间通常由服务器在 HTTP 响应的标头中设置。问题是,服务器永远不知道更新发布之前的确切时间,所以它不断地对冲它的赌注并给出一个“足够短”的到期日期。(对 HTML 文件中包含的资源使用唯一生成的名称是避开此项目符号的一种方法……只需要检查封闭的 HTML 页面。
有两个脚本有一个小理由:
- 您可以让一个脚本在加载大脚本时尽快开始执行。
但是,是的,这一切都与最终用户感知的速度有关……尤其是在第一页加载时,当您试图赢得他们的注意力时。
于 2012-12-05T15:50:04.200 回答