jsのhtmlにおけるロードの実行順序

4790 ワード

1.ロード順序:タグの出現順序を導入し、順次ロードする
ページ上のJavascriptコードはHTMLドキュメントの一部ですので、Javascriptページのロード時に実行される順序は、その導入マーク<script/>の出現順です. マークの中にあるもの、またはsrcを通して導入された外部JSは、その文の出現順に実行され、実行過程は文書の一部です.
2、各スクリプトが定義するグローバル変数と関数は、後に実行するスクリプトによって呼び出されます.
変数の呼び出しは、前に宣言されている必要があります.そうでないと取得された変数の値はundefinedです.
<script type="text/javscrpt">//<![CDATA[  

  alert(tmp);    

  //输出 undefined var   

  tmp = 1;  

  alert(tmp);  //输出 1//]]>  

</script>  
3.同じセグメントのスクリプトでは、関数の定義は、関数の呼び出しの後に現れることができますが、それぞれ2つのセグメントのコードであり、関数の呼び出しが第1のセグメントのコードであれば、エラーを報告する関数は定義されていません.
<script type="text/javscrpt">//<![CDATA[  

  aa();            //浏览器报错//]]>  

</script>  

<script type="text/javscrpt">//<![CDATA[  

  aa();   //输出 1   

  function aa()  

  {  

    alert(1);  

  }//]]>  

</script>  
4、同じ名前のJS関数の実行順序
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">   

<html>  

<head>  

<script  type="text/javascript">  

  

    function aa() {  

        alert('First aa')  

    }     

</script>     

    <title></title>  

</head>  

<body>  

    <form id="form1" runat="server">  

  

<br />  

<input id="Button1" type="button" value="button"  onclick="aa();"/>  

    </form>  

</body>  

<script  type="text/javascript">  

    function aa(s) {  

        alert('Second aa');  

    }  

    function aa(s) {  被执行

        alert('Last aa');  

    }  

</script>  

</html>  
一番後ろの名前の関数を実行します.結果は 「botton」をクリックして実行した結果:Last aa
5.document.write()はスクリプトドキュメントの位置に出力を書き込み、ブラウザでdocumemt.write()がある文書の内容を解析した後、document.write()が出力した内容を解析し続け、解析が完了したらHTMLドキュメントを解析し続けます.
<script type="text/javascript">//<![CDATA[      

  document.write('<script type="text/javascript" src="test.js"></'+'script>');  

  document.write('<script type="text/javascript">');

  document.write('alert("2");') ;     

  document.write('alert("我是" + tmpStr);');      

  document.write('</'+'script>');    

</script>   

  

<script type="text/javascript">

  alert(3);  

</script>
test.js文件内容
var tmpStr=2;
alert(tmpStr);
実行手順2 2私は 2 3
6.jsにjsファイルを導入する時は必ずの分離導入に注意してください.そうでないとメインファイルのjsを切断します.主に後ろのの終わりのラベルです.
document.write("<scr"+"ipt src='my.js'></scr"+"ipt>"); 

document.write('<script type="text/javascript" src="test.js"></'+'script>');