可能重复:
Javascript Load Order
如果我们在HTML页面的标题中有许多脚本标记,那么它们是否必须以串行方式呈现,或者它们可以按任何顺序重新呈现。更具体地说,我在HTML的头部有脚本标记,它们仅用于加载.js文件。现在,如果脚本标记早先出现,则意味着它将提前渲染,并且在加载当前文件之前不会加载任何其他.js文件。此外,如果我们有两个具有相同名称的函数,那么通过在script标签(内联)中放置一个函数,可以确保在调用此重复名称函数时只调用此函数。
谢谢, 千斤顶
答案 0 :(得分:1)
async
属性,否则HTML文档中的 <script>
标记将按顺序执行。这是因为他们可以通过调用document.write
来修改HTML文档(包括,例如,添加必须在原始HTML文档中的下一个脚本之前加载和执行的其他脚本)。
由于订单无关紧要,您不应该使用document.write
,而是使用DOM(或使用DOM的库),您应该将脚本放在文档的底部。虽然后面的变量赋值(在JavaScript中,包括函数定义)覆盖了前者,但建议对函数使用不同的前缀,以便名称不会发生冲突,和/或使用私有变量,如下所示:
function f() {
console.log("do one thing");
}
(function() {
function f() {
console.log("do another thing");
}
f(); // prints "another"
})();
// The "another" function is not visible here.
答案 1 :(得分:0)
按顺序
加载java脚本的顺序如果您使用将在本地脚本之后加载的任何跨域脚本(在同一域中移动脚本)
尝试将脚本置于html之前,否则脚本将覆盖变量