考虑以下场景:
<h1>Hello!</h1>
<script src="cool1.js"></script>
<script src="cool2.js"></script>
<h2>Goodbye!</h2>
<img src="boat.gif" alt="Big Boat">
何时cool1.js
下载是否意味着Hello!
已显示但在下载并执行Goodbye!
之前不会显示cool1.js
?
什么时候cool2.js
下载(我知道 JavaScript 是单线程的,所以它必须等待cool1.js
完成执行)?什么时候boat.gif
下载和显示?
作者在这里声称:
浏览器只能在任何特定时间点执行 JavaScript 或呈现 UI……想想当页面下载到浏览器时会发生什么。该页面在下载时已开始呈现,然后遇到一个标签。此时,浏览器将无法继续渲染,因为 JavaScript 可能会影响 UI,因此它会等待。
我不明白这是因为 JavaScript 不能修改它之前的内容吗?
例如,如果cool1.js
将里面的内容更改为<h1>
“Good day”怎么办?