通常狀況下,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形式打出的程式碼。