通常状况下,JavaScript作为一种解释性的脚本,都是从上而下顺序执行的,但是JavaScript还允许在其语句中嵌套,也就是这个样子:
document.write("<script>alert(t);</scr"+"ipt>");
注意:</script>不能写作</script>,要用字符串连接的形式来表述,否则会有语法错误,估计是因为JavaScript遇到</script>就以为脚本结束了。
在这种情况下,正常的脚本和嵌入的脚本的执行顺序就需要研究一下了。
b.js:[下载]
alert("5");
a.js:[下载]
alert("4");
document.write("<script src=b.js></scr"+"ipt>");
alert("6");
test.html:[下载]
<script src=a.js></script>
<script>
alert("1");
document.write("<script src=b.js></scr"+"ipt>");
document.write("<script>alert("3")</scr"+"ipt>");
alert("2");
</script>
执行test.html,可以看到打印的顺序是:4,6,5,1,3,2,5
还可以做一些相关测试,得出的结论是:
1.同级的不同的代码块,代码块间的执行顺序为从上到下;
2.在代码中嵌入代码的情况下,先执行上层代码块,再执行子代码块;代码中嵌入代码是指一个文件引入另一个文件,而不是指所有的通过document.write形式打出的代码。