你是否理解JavaScript的執行順序?

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

          posted on 2006-08-24 00:51 窮鬼 閱讀(156) 評論(0)  編輯  收藏 所屬分類: AJAX學習
          主站蜘蛛池模板: 大石桥市| 兴文县| 梁平县| 双江| 锡林浩特市| 敦化市| 莱西市| 尖扎县| 许昌县| 太仆寺旗| 湖南省| 聂拉木县| 莲花县| 武鸣县| 普定县| 合阳县| 乐都县| 博客| 临洮县| 拉孜县| 盈江县| 南阳市| 勃利县| 中宁县| 鲁山县| 慈溪市| 承德县| 竹溪县| 锡林浩特市| 昂仁县| 微山县| 乌拉特中旗| 昌都县| 阿荣旗| 拉萨市| 乌兰县| 友谊县| 浦江县| 上蔡县| 衡阳市| 潞西市|