在学习Javascript,想着如何提升性能优化网站代码,于是阅读《Javascript高性能》,希望有所收获。
阅读之余,记录笔记。
-
第一章 加载和执行
管理浏览器中的 JavaScript 代码是个棘手的问题,因为代码执行阻塞了其他浏览器处理过程,诸如用户 界面绘制。每次遇到 <script>
标签,页面必须停下来等待代码下载(如果是外部的)并执行,然后再继续处 理页面其他部分。但是,有几种方法可以减少 JavaScript 对性能的影响:
-
将所有
<script>
标签放置在页面的底部,紧靠 body 关闭标签</body>
的上方。此法可以保证页面在脚本 运行之前完成解析。 -
将脚本成组打包。页面的
<script>
标签越少,页面的加载速度就越快,响应也更加迅速。不论外部脚本 文件还是内联代码都是如此。
有几种方法可以使用非阻塞方式下载 JavaScript:
-
为
<script>
标签添加 defer 属性(只适用于 Internet Explorer 和 Firefox 3.5 以上版本) -
动态创建
<script>
元素,用它下载并执行代码 -
用 XHR 对象下载代码,并注入到页面中
通过使用上述策略,你可以极大提高那些大量使用 JavaScript 代码的网页应用的实际性能。