javascript - 将 JavaScript 拆分为多个文件,还是将其全部放在一个文件中,哪个更好?

标签 javascript server

假设一个网站在 Linux 服务器上运行。一共有三页。一个页面有 AJAX 调用,一个页面有一个 JavaScript 生成的日历,第三个页面有一个灯箱图像库。它们还共享一些常见的 JavaScript 函数。

我之前有两种处理此类设置的方法。方法一:创建四个.js文件。一个具有常用功能(在每个页面上加载),另外三个具有每个不同的页面功能。每个页面加载两个脚本:通用脚本和该页面内容的特定脚本。该页面发出一个额外的 HTTP 请求,但不会加载任何无关的脚本。

方法 2:将所有内容放入一个 .js 文件中,然后每个页面加载该文件。只有一个 HTTP 请求,但每个请求都会加载大量无关的 JavaScript(例如,日历页面还将加载图库页面和 AJAX 调用页面的脚本)。

假设正确的函数命名等不是问题,因此我们不需要担心函数名称重叠等问题,哪种情况最有利于网站加载时间和整体性能?每页有一个额外的 HTTP 请求,还是每页有大量无关的 JavaScript?

最佳答案

这取决于您的 Javascript 大小和用户的数据连接,以及(不)使用 HTTP2 等技术。

总的来说,答案是,将单独的 Javascript 文件合并到每页的单个文件中可以更好地提高性能。毫无疑问,您不能为每个页面单独执行此操作,这意味着您将拥有一个包含特定于页面的函数以及您所描述的常用函数的 Javascript 文件。您可以手动执行此操作,也可以使用 gulp 等工具自动执行该任务。

关于javascript - 将 JavaScript 拆分为多个文件,还是将其全部放在一个文件中,哪个更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34231261/

相关文章:

javascript - json 选择一个名为 "item"的项目

javascript - reactjs axios 获取带有自定义 header 的请求

javascript - jQuery无限滚动缺少CSS背景加载量页面

javascript - 星级评分插件问题

java - 使用 Tomcat7 服务器配置 SSL

javascript - SequelizeEagerLoading错误: parent model is not associated to child

apache - 为什么我的 Ubuntu Web 服务器在/etc/ssl/certs 中有这么多 SSL 证书?

ruby-on-rails - 从树莓派远程连接到 rails 服务器

javascript - 我的 API 路线不起作用; NodeJS

python - 如何使用Python(套接字)从客户端向客户端发送和接收消息?