好的,所以我有一个合理大小的项目,我在其中使用 jquery 主干和其他几个 javascript 库。我想知道是否应该为我的 javascript 库创建一个文件,为我的自定义代码创建另一个文件。或者一堆单独的javascript文件。
一个大的 javascript 文件还是多个较小的文件?
IT技术
javascript
jquery
performance
web
2021-03-19 18:22:39
6个回答
减少 HTTP 请求通常是个好主意。所以,你应该尽可能减少文件的数量是合理的。
我个人的偏好是拥有三个“组”的 JavaScript 文件:
- 核心文件。包含几乎无处不在的函数和其他有用的页面初始化内容。
- module文件。包含在多个地方使用的代码,但并非无处不在。可以插入以提供附加功能。例如,如果您有一个处理日期输入的脚本,您可以将其作为module文件包含,并将其添加到具有日期输入的页面中。
- 特定于页面的文件。这些文件包含仅在一处使用的代码。它们作为单独文件添加而不是作为页面本身的一部分添加的唯一原因是出于缓存原因。
一个大文件。您应该在投入生产时缩小代码,并在代码较大时对其进行压缩。您希望向服务器发出尽可能少的请求以提高页面性能
最好把它分开,但不要过分热情。这样您以后就可以重用您的库代码。此外,每个人都更喜欢使用单独的文件,因为这样可以使事情更有条理。
也就是说,最好为用户提供一个压缩文件,以便可以轻松缓存所有内容,这也减少了页面请求的数量。例如,Rails 3 在资产管道中自动执行此操作。您可以编写脚本来运行您最喜欢的压缩器。但是你不应该为此牺牲代码可读性——你可以拥有你的蛋糕,也可以吃它!
一个大文件或两个文件:一个小一个大。需要明确的是,在开发过程中最好有单独的文件——也许使用requireJS 之类的东西。但是当您部署它时,最好将所有内容压缩在一个文件中,以减少 HTTP 延迟和请求。
我提到了两个文件。在某些情况下,有一个小文件可能会很好,它负责“引导”操作,同时下载“大文件”——特别是如果它真的很大——。这对于第一次访问尤其有用,因为用户还没有缓存您的文件。
通常,我会尽可能少地使用,以减少向服务器发出的请求数量。