【问题标题】:Does an asynchronously loaded script affect the loading time of other scripts?异步加载的脚本会影响其他脚本的加载时间吗?
【发布时间】:2013-10-30 13:48:33
【问题描述】:

我确实理解异步加载脚本不会影响页面加载时间,因为浏览器在解析其余脚本之前不会等待脚本加载。

但是它会/会影响浏览器开始加载其他(异步)脚本所需的时间吗?

如果是这样,它会因浏览器而异吗?

一个网站的开发人员声称,在这种情况下,异步脚本会导致在其他异步脚本开始加载之前出现 25 毫秒的延迟。

【问题讨论】:

  • 如果外部脚本之间有内联 js,我想它会阻止并行下载文件

标签: javascript html dom browser


【解决方案1】:

是的,它可以。最大同时连接数是异步加载可能影响其他资源加载速度的原因之一。简而言之,浏览器限制了它同时进行的资源下载次数,因此添加另一个异步加载可能会延迟其他加载。

  • This SO question & answers 有更多详细信息,包括每个不同浏览器的数字
  • This one 专门讨论了 AJAX,以及如何从不同域加载是一种可能的解决方法。

【讨论】:

  • 根据您的第一个链接,浏览器限制每个域名。这一定意味着从不同域加载 100 个文件时应该没有延迟?
  • @joakimdahlstrom,显然如此,至少对于某些浏览器而言。由于 firefox 默认限制每个域 2 个连接,因此您可以通过从不同域加载 10 个文件并在 firebug 中跟踪连接来轻松测试它。
【解决方案2】:

使用head.js

你不需要解决这个问题。抱歉,如果它不是您问题的答案

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-04
    • 1970-01-01
    • 2016-07-09
    • 2012-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-05
    相关资源
    最近更新 更多