在脚本中使用代码会在性能上有什么不同吗?标记或从.js文件
Is there a difference in performance when having code in a <script> tag or from a .js file?
我有几百行javascript代码,只会在一个页面上使用。但是,我不确定是否应该将代码放入外部.js文件或将其保留在标记中。我相信脚本标签必须在页面的其余部分加载之前加载,但是.js文件必须与html一起加载,从长远来看可能会变得更慢。
我知道这两个选项之间的性能差异几乎可以忽略不计(在良好的网络连接下可以降低到毫秒),但我真的很想知道是否存在以及哪一个更快。
当我说"更快"时,我指的是页面下载速度,代码实际运行之前需要多长时间,如果在开始运行时对代码的速度有影响,或者是否有任何其他我不知道的延迟。
另外,我有我的代码包装在jquery
$(document).ready()
我相信在这种情况下,这会对代码何时开始运行产生影响。
谢谢
所以,没有"正确"答案。
如果你想尝试利用用户的浏览器来缓存你的javascript文件,你可以为你的代码创建一个.js文件。
如果,另一方面,你不想依赖于用户的缓存,去包括整个脚本在<script></script>
:这将节省你的HTTP请求,这是平均几百字节(我从来没有真正计算过,但这是一个平均请求的长度,给予或采取。
还有其他一些方法可以改善"加载"时间,例如压缩javascript代码(即删除用于缩进的空格,使用短变量名等)。一些好的服务可以在网上找到。
另一种让你的代码运行得"更快"的方法是优化它:如果你不太注意的话,你的代码可能会有一些低效的行为。您可以在代码中找到这样的行为,并对其进行更改。我真的不能告诉你要找什么,因为这里面有太多不同的方面。大多数浏览器都会在运行代码时尝试优化代码,但是编写已经优化过的代码并不是一件坏事。如果要运行一些基准测试,可以使用jsperf.com
如果JS文件跨多个页面使用,最好将其放在单独的文件中以进行缓存。如果只在单个文件中使用,脚本标记会稍微快一些,因为它会保存HTTP请求。
使用$(document).ready()你的代码将运行直到整个页面下载完成,是的,如果你把所有的js代码放在一个单独的文件中,页面和js将被并行下载,页面将下载得更快。这是一个很好的做法,你的js代码在单独的文件,有利于缓存或有这些文件在一个专用的CDN。
是的,有一些做法可以提高页面加载速度。
1。把javascript放在一个单独的文件中会使浏览器缓存javascript文件,这样它就不会一次又一次地加载同一段代码。
2。你也可以把javascript在结束</body>
标签之前,这样你就避免了空白屏幕,而浏览器试图解释你的javascript文件,因为在那个点的页面布局已经可见的用户。
- 从文本文件js中读取列表
- 当我用ctrl+p搜索时,为什么要在谷歌chrome上使用inspect来调试缺少显示文件js
- 获取用于外部JavaScript文件(.js)的代码提示
- 如何将Javascript文件(.js文件)放在web服务器中
- 如何将 JavaScript 文件(.js 文件)添加到 C# 项目并从 C# 代码调用 JavaScript 方法
- 在 Node 中包含 javascript 文件.js无需 require('.') ing
- 如何使用jquery显示多个文件.多文件.js
- 使用 PDF 打开 PDF 文件.js而不将文件作为查询字符串传递
- 转换颜色十六进制值以用于三个 JSON 文件.js
- 如何使用 jQuery 选择多个文件.多文件.js插件?使用单个关闭按钮一次选择多个文件
- 如何在 Gulp 任务中间添加 CSS 文件.js
- 如何从Dropzone上传和删除文件.js
- 如何在视频中添加视频文件.js 4.2.1.
- 从快速节点下载文件.js具有 JWT 授权
- 访问 JavaScript 文件.js中的 C# 变量
- 在节点中热重载外部 js 文件.js如果文件有任何更改
- 如何在一台服务器中运行不同的.js文件.js NODE JS中的文件
- 如何在多文件.js中上传文件时检查文件扩展名
- 将文件.js中的var导入到模块joomla的模板中,并使用后台进行修改
- 在path项目中编写文件js脚本