Javascript 外部阻止脚本强制浏览器等待,然后才能呈现页面?

Javascript 外部阻止脚本强制浏览器等待,然后才能呈现页面?,javascript,html,rendering,blocking,google-contacts-api,Javascript,Html,Rendering,Blocking,Google Contacts Api,见: 他们说: 外部阻止脚本强制浏览器等待获取JavaScript,这可能会在呈现页面之前添加一个或多个网络往返 谷歌为什么这么说?这让人很困惑。其实他们是说, 外部阻止脚本强制浏览器在呈现页面之前等待 他们不是说: 外部阻止脚本强制浏览器在呈现页面的(特定)部分之前等待 让我们举一个例子: INDEX.HTML <!DOCTYPE html> <html> <head> <meta charset="utf-8" />

见:

他们说:

外部阻止脚本强制浏览器等待获取JavaScript,这可能会在呈现页面之前添加一个或多个网络往返

谷歌为什么这么说?这让人很困惑。其实他们是说,

外部阻止脚本强制浏览器在呈现页面之前等待

他们不是说:

外部阻止脚本强制浏览器在呈现页面的(特定)部分之前等待

让我们举一个例子:

INDEX.HTML

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Test</title>
    </head>
    <body>
        Line 1<br />

        <script>
            alert('I could also put here for example some more html.');
        </script>

        Line 2<br />

        <script src="script.js"></script>

        Now the HTML parser is almost done!<br />
    </body>
</html>

试验
第1行
警报('我也可以在这里放一些html'); 第2行
现在HTML解析器几乎完成了
SCRIPT.JS

// Synchronous delay of 30 seconds
var timeWhile = new Date().getTime(); 
while( new Date().getTime() - timeWhile < 30000 );
//同步延迟30秒
var timeWhile=new Date().getTime();
while(new Date().getTime()-timeWhile<30000);
这就是测试:

结果是,在获取“外部阻止脚本”之前,浏览器正在显示(呈现)已经存在的内容

那么谷歌为什么这么说呢?在我看来,“一页”与“一页的一部分”完全不同。如果人们这样看的话,他们真的会在“页面速度”方面做出错误的决定。我之所以发布这篇文章,是因为过去我也是其中之一。我仍然看到我周围的困惑