gpt4 book ai didi

javascript - 在 JavaScript 中,脚本保证在文档中的先前脚本完成运行后运行

转载 作者:行者123 更新时间:2023-12-02 17:49:51 25 4
gpt4 key购买 nike

请考虑以下代码片段:

<!DOCTYPE html>
<html>
<head>
<script src="script_1.js"></script>
<script src="script_2.js"></script>
</head>
<body>
<script>
//script_3
</script>
</body>
</html>

能否确保 script_3 仅在 script_1script_2 完成执行且 script_2 后运行c 仅在 script_1 完成后运行,前提是 script_1script_2 中没有异步代码?

因为现在我遇到一种情况,script_3 有时会在 script_2 完成之前启动,并且似乎所有脚本都没有任何异步代码。但我无法在更简单的示例中重现这种情况。

谢谢。

最佳答案

Can a one be sure that script_3 is run only after script_1 and script_2 finished to execute and script_2c is run only after script_1 finished, provided that there are no async code in script_1 and script_2?

是的,前提是没有任何脚本标记使用 async or defer attributes .

请注意,这与此有很大不同:

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

...其中 script1.js 包含以下内容:

var script = document.createElement('script');
script.src = "script2.js";
document.getElementsByTagName('script')[0].parentNode.appendChild(script);

...在这种情况下,script2.jsscript3.js 的顺序是困惑的。

但是,如果 script1.js 使用 document.write 输出 script2.js 脚本标记,那就类似于标记版本,并且顺序将得到保证(1,然后 2,然后 3)。

关于javascript - 在 JavaScript 中,脚本保证在文档中的先前脚本完成运行后运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21461497/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com