@@ -554,23 +554,23 @@ JSONP的请求URL通常是像这样:
554554
555555## 部署JavaScript
556556
557- 在生产环境中使用JavaScript时,有不少性能方面的考虑。 我们来讨论一下最重要的一些。如果需要了解所有的细节,可以参见O'Reilly出社的《高性能网站建设指南》和《高性能网站建设进阶指南》。
557+ 在生产环境中使用JavaScript时,有不少性能方面的考虑, 我们来讨论一下最重要的一些。如果需要了解所有的细节,可以参见O'Reilly出社的《高性能网站建设指南》和《高性能网站建设进阶指南》。
558558
559559### 合并脚本
560560
561561创建高性能网站的第一个原则就是尽量减少外部引用的组件(译注:这里指文件),因为HTTP请求的代价是比较大的。具体就JavaScript而言,可以通过合并外部脚本来显著提高页面加载速度。
562562
563- 我们假设你的页面正在使用jQuery库,这是一个.js文件 。然后你使用了一些jQuery插件,这些插件也是单独的文件。这样的话在你还一行代码都没有写的时候就已经有了四五个文件了。把这些文件合并起来是很有意义的,尤其是其中的一些体积很小(2-3kb)时,这种情况下,HTTP协议中的开销会比下载本身还大。合并脚本的意思就是简单地创建一个新的js文件 ,然后把每个文件的内容粘贴进去。
563+ 我们假设你的页面正在使用jQuery库,这是一个` .js ` 文件 。然后你使用了一些jQuery插件,这些插件也是单独的文件。这样的话在你还一行代码都没有写的时候就已经有了四五个文件了。把这些文件合并起来是很有意义的,尤其是其中的一些体积很小(2-3kb)时,这种情况下,HTTP协议的开销会比下载本身还大。合并脚本的意思就是创建一个新的js文件 ,然后把每个文件的内容粘贴进去。
564564
565- 当然,合并的操作应该放在代码部署到生产环境之前,而不是在开发环境中,因为这会使调试变得困难 。
565+ 当然,合并的操作应该放在代码部署到生产环境之前,而不是在开发环境中,否则会使调试变得困难 。
566566
567567合并脚本的不便之处是:
568568
569- - 在部署前多了一步操作,但这很容易使用命令行自动化工具来做,比如使用Linux/Unix的cat :
569+ - 在部署前多了一步操作,但这很容易使用命令行自动化工具来做,比如使用Linux/Unix的 ` cat ` :
570570
571- $ cat jquery.js jquery.quickselect.js jquery.limit.js > all.js
571+ $ cat jquery.js jquery.quickselect.js jquery.limit.js > all.js
572572- 失去一些缓存上的便利——当你对某个文件做了一点小修改之后,会使得整个合并后的代码缓存失效。所以比较好的方法是为大的项目设定一个发布计划,或者是将代码合并为两个文件:一个包含可能会经常变更的代码,另一个包含那些不会轻易变更的“核心”。
573- - 你需要处理合并后文件的命名或者是版本问题,比如使用一个时间戳all_20100426.js或者是使用文件内容的hash值 。
573+ - 你需要处理合并后文件的命名或者是版本问题,比如使用一个时间戳 ` all_20100426.js ` 或者是使用文件内容的hash值 。
574574
575575这就是主要的不便之处,但它带来的好处却是远远大于这些麻烦的。
576576
@@ -580,19 +580,19 @@ JSONP的请求URL通常是像这样:
580580
581581从用户的角度来想,完全没有必要下载代码中的注释,因为这些注释根本不影响代码运行。
582582
583- 压缩代码带来的好处多少取决于代码中注释和空白的数量 ,也取决于你使用的压缩工具。平均来说,压缩可以减少50%左右的体积。
583+ 压缩代码能带来多少好处取决于代码中注释和空白的数量 ,也取决于你使用的压缩工具。平均来说,压缩可以减少50%左右的体积。
584584
585- 服务端脚本压缩也是应该要做的事情。配置启用gzip压缩是一个一次性的工作,能带来立杆见影的速度提升。即使你正在使用共享的空间,供应商并没有提供那么多服务器配置的空间,大部分的供应商也会允许使用.htaccess配置文件 。所以可以将这些加入到站点根目录的.htaccess文件中 :
585+ 服务端脚本压缩也是应该要做的事情。配置启用gzip压缩是一个一次性的工作,能带来立杆见影的速度提升。即使你正在使用共享的空间,供应商并没有提供那么多服务器配置的空间,大部分的供应商也会允许使用` .htaccess ` 配置文件 。所以可以将这些加入到站点根目录的` .htaccess ` 文件中 :
586586
587587 AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/javascript application/json
588588
589- 平均下来压缩会节省70%的文件体积。将代码压缩和服务端压缩合计起来,你可以期望你的用户只下载你写出来的未压缩文件体积的15% 。
589+ 平均下来压缩会节省70%的文件体积。将代码压缩和服务端压缩合计起来,你的用户只需要下载你写出来的未压缩文件体积的15%左右 。
590590
591591### 缓存头
592592
593- 与流行的观点相反,文件在浏览器缓存中的时间并没有那么久。你可以尽你自己的努力,通过使用Expires头来增加非首次访问时命中缓存的概率 :
593+ 与比较流行的观点相反,其实文件在浏览器缓存中的时间并没有那么久。你可以通过使用Expires头来增加非首次访问时命中缓存的概率 :
594594
595- 这也是一个在.htaccess中做的一次性配置工作 :
595+ 这也是一个在` .htaccess ` 中做的一次性配置工作 :
596596
597597 ExpiresActive On
598598 ExpiresByType application/x-javascript "access plus 10 years"
0 commit comments