“有多大?”;“太大”;对于javascript文件

“有多大?”;“太大”;对于javascript文件,javascript,Javascript,有了所有令人敬畏的jQuery插件,我们很有可能开始将它们放在所有地方,以增强我们网站的外观 我正在寻找一些关于是否以及何时应该关注这些脚本的大小的意见 假设它们被缓存在web服务器级别,那么我想潜在的问题是web服务器提供的脚本的带宽,以及需要下载所有这些脚本的客户端浏览器的性能。正如您所提到的,这里有两个问题 第一个是服务器负载。如果这是一个问题,您可以使用,并直接从谷歌的CDN获取您的LIB 第二个问题是客户端加载时间。那么,你应该决定你的目标受众是谁,以及你打算让用户等待多少。根据经验,

有了所有令人敬畏的jQuery插件,我们很有可能开始将它们放在所有地方,以增强我们网站的外观

我正在寻找一些关于是否以及何时应该关注这些脚本的大小的意见


假设它们被缓存在web服务器级别,那么我想潜在的问题是web服务器提供的脚本的带宽,以及需要下载所有这些脚本的客户端浏览器的性能。

正如您所提到的,这里有两个问题

第一个是服务器负载。如果这是一个问题,您可以使用,并直接从谷歌的CDN获取您的LIB


第二个问题是客户端加载时间。那么,你应该决定你的目标受众是谁,以及你打算让用户等待多少。根据经验,目前大多数网站每页都要消耗300KB的带宽,包括脚本、样式表和图像。

一段字符串有多长


这取决于目标受众的带宽、服务器的带宽以及JS提供的相对价值。

您必须正确看待它。查看加载页面的时间有多长,其中javascript占多大百分比。通常它没那么大

由于js通常会为站点添加一些细节,所以只要它不会阻止其他元素的加载,那么它是最后加载还是相对缓慢加载可能并不重要


在我看来,如果您需要该功能,您必须加载代码,因此这是不可避免的。如果是装饰性的,那么最后加载装饰性的js,最好迟一点加载,而不是完全不加载。

正如其他人对jQuery本身所说的,最好使用任何公共CDN托管副本,我还建议使用工具将插件/自定义脚本捆绑到一个有意义的包中。这些工具因服务器类型而异,但有两个常用工具是和。在后一篇文章中,有更多关于这个主题的信息


编辑:我目前与.NET一起使用的解决方案为ASP.NET开发提供了最好的案例,您只需存储.debug即可。解决方案中JS文件的副本,javascript文件很容易获得intellisense,当您在debug中运行时,您将获得所有调试JS文件,当您使用debug=false运行时,将合并并缩小。在这两种情况下,它们都有破坏缓存的字符串,因此您不必担心shift+refresh会不会使用过时的javascript。

我认为您不应该太担心它。通常,图像将占用大部分带宽,而不是Javascript文件

如果您想提高站点速度,那么减少页面中HTTP请求的数量是一个开始。这可能会带来更好的性能提升。尝试将所有.js文件压缩为一个文件,并使用CSS sprite技术显示图像