0

我假设如果您将一些 Javascript 代码放在外部源中(并使用 src=""),那么它的 b/c 速度会慢一些,然后页面必须下载另一部分,但我想知道这是否无关紧要。

从我在线完成的测试(使用webpagetest.org)来看,它似乎很小(< 总页面加载时间的5%)。

但是只是想知道“幕后”发生了什么以及浏览器(我假设)是否正在启动另一个进程以单独下载该位而不是从服务器与页面的其余部分一起下载实际上同样快(b / c 它同时发生)。

4

2 回答 2

1

如果您在 Firefox 中使用 Firebug 进行测试,您会看到 Firefox 正在同时下载多个文件(每个浏览器的并发文件数不同)。但是你应该把js代码放在外部文件中的主要原因是它可以在服务器端被缩小和压缩,也可以被浏览器缓存。从外部文件加载它还具有能够从静态域(无 cookie)加载它并使用 CDN 加速交付的好处。因此,要回答您的问题,将其放入页面会更慢,因为浏览器每次加载页面时都需要下载它。

于 2012-12-07T03:06:41.857 回答
1

不够慢,没有关系。

我认为速度差异问题是一个红鲱鱼。通常,您应该将脚本与 html 分开:

  • 关注点分离:html 是网站的结构,而脚本是网站的行为。它将关注点混合在一起,最好将脚本保存在单独的文件中。
  • 与 html 分开提供的脚本可能同样快甚至更快,这似乎违反直觉,但是诸如缓存代理服务器内容交付网络,甚至像SPDY这样的新 Web 协议之类的东西都可以使速度问题完全没有意义。
于 2012-12-07T03:25:27.330 回答