在浏览器中订购脚本加载

时间:2017-02-27 10:39:21

标签: javascript html

我有两个文件A.jsB.js。我在我的html中导入它们如下

<script type="text/javascript" src="A.js"></script>
<script type="text/javascript" src="B.js"></script>

如果我在A.js内定义变量。

  • 我可以从B中的A访问变量吗?
  • 加载的顺序是什么? B可以来吗?

4 个答案:

答案 0 :(得分:3)

来自HTML spec

  

使用这些可以选择三种可能的模式   属性。如果存在 async 属性,则脚本将为   一旦可用就异步执行。如果异步   属性不存在但延迟属性存在,然后是   页面完成解析后执行脚本。如果没有   属性存在,然后获取并执行脚本   在用户代理继续解析页面之前立即执行。

因此,只要您未使用deferasync属性,A就可以使用B.js

答案 1 :(得分:1)

是的,您可以从B访问该变量。但在A中,除非完成加载,否则您将无法访问B的变量。加载将保持序列A然后B.我更喜欢你使用jquery并使用document.reday函数和访问变量。这将等到你的所有脚本都被加载然后它将开始执行。任何函数中的变量都是js中的全局变量,因此您可以从任何您想要的地方访问它。

答案 2 :(得分:0)

Javascript与其他编程语言不同。首先,它们是连续加载的,此外,在B locad完成之前,B中的变量是不可访问的。

换句话说,在你面临的情况下,你不能在A中调用B中的任何内容,直到页面加载完成,或者你可以使用jQuery文档。

答案 3 :(得分:0)

使用以下内容

<script type="text/javascript">
    var test = "";
</script>
<script type="text/javascript" src="A.js"></script>
<script type="text/javascript" src="B.js"></script>