接下来,让我们看看如何通过七个实用技巧提高 JavaScript 代码的性能。
1. 删除未使用的 JavaScript 代码
提高 JavaScript 性能的一种可靠方法就是减少它。 无情地删除未使用的代码。 如果你检测到给定的函数已过时,请将其删除,这将缩短下载时间,因为文件大小将减小,浏览器将花费更少的时间来分析代码。
2.使用Gzip压缩
想象一下,如果不是向浏览器发送一个大文件,你的 Web 服务器可以发送一个压缩文件以使其更轻,这样,浏览器会更快地完成文件的下载。浏览器收到压缩文件后,就可以提取该文件并照常使用,嗯,这正是 Gzip 的用途!
Gzip 是一个用于压缩文件的应用程序,大多数 Web 服务器都支持它。当你的服务器正确配置为提供压缩内容时,它会在将响应发送到浏览器之前压缩响应。使用 Gzip 不仅可以压缩你的 JavaScript 文件,还可以压缩你的 HTML 和 CSS,这将提高你的应用程序的性能。
3. 尽量减少 DOM 交互
DOM(动态对象模型)是表示 Web 文档结构的接口。与 DOM 的交互在 JavaScript 中显然非常常见,因为该语言的主要用例之一是操作页面上的元素以创建比仅使用 HTML 可能实现的更丰富的用户体验。问题是 DOM 更改会导致性能下降,因为它们会导致浏览器回流。该怎么办?
你不能简单地消除 DOM 交互——这首先会破坏使用 JavaScript 的目的之一。你最好的做法是将 DOM 交互保持在最低限度。实现此目的的方法之一是批量处理 DOM 更改,这样你就可以避免不必要的回流。
另一种有用的技术是缓存 DOM 元素,这意味着存储对经常访问的元素的引用,并在将来再次访问同一对象时使用该引用,通过这样做,你可以获得显着的性能提升。
4. 切换到 HTTP/2
这个技巧不是特定于 JavaScript 的指南,而是更多的通用 Web 性能技巧,并且很容易理解。 它只是说你应该使用 HTTP/2 而不是它的前身 HTTP/1.1。HTTP/2 使用多路复用,这意味着可以同时发送多个请求,它的前身 HTTP/1.1 要求在开始下一个请求之前完成每个请求。 新版 HTTP 中的这一改进和其他改进将提高你网站的性能。
5. 延迟加载不必要的 JavaScript
延迟加载初始页面加载不需要的任何内容,页面首次加载时并非所有功能都需要,例如,你可以延迟加载需要用户执行给定操作的函数。这样你就可以避免加载 JS 代码,这些代码只会延迟页面的初始加载和显示,浏览器加载页面后,你可以加载其他功能,以便在用户需要时准备就绪。
为此,你可以使用将 JavaScript 分解为更小的文件并根据需要加载它们的方法。你还可以使用 async 或 defer 属性。
6. 使用适用于其他语言的性能改进策略
在使用 JavaScript 时,没有什么可以阻止你应用在其他语言中使用的性能优化。你仍然希望避免在循环内执行昂贵的任务或在不需要时依赖递归。
此外,对已知问题使用最先进的算法。更好的是,在可用的情况下使用原生 JavaScript 函数,因为它们在大多数情况下肯定会比本地代码执行得更好。
如今,正在开发的大部分应用程序都是 Web 应用程序,由于 JavaScript 是网络语言,因此优化 JavaScript 性能是一项值得进行的努力。