3个文件,一个index.html如下
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>js加载顺序</title>
</head>
<body>
显示内容不
<script src="a1.js" type="text/javascript"></script>
<script src="a2.js" type="text/javascript"></script>
</body>
</html>
a1.js如下
// a1.js
/*
这里粘贴一本小说,目的让该文件变大,使得下载较慢。
*/
var a = 111;
var b = 222;
a2.js如下
// a2.js
var c = a+b;
alert(c);
alert('ddd');
我将a1.js做到20m那么大,在谷歌浏览器下,测试,发现,a1不下载完,a2也就不执行。原来担忧,a1过大,没下载完,而a2已结下载完成,a2中要用到a1中的变量怎么办,现在明白了,如果a1没下载完成,那么a2是不会执行的。
同样,将html变成如下
<script src="a1.js" type="text/javascript"></script>
<script src="a2.js" type="text/javascript"></script>
这里显示内容
会发现,如果a1.js没有下载完成的话,浏览器里是不会显示
“
这里显示内容
”
的,也在按顺序等待~~和图片不是一回事,图片不会等待上面个先显示再显示下面的。而js会等待后再执行。