<address id="ttjl9"></address>

      <noframes id="ttjl9"><address id="ttjl9"><nobr id="ttjl9"></nobr></address>
      <form id="ttjl9"></form>
        <em id="ttjl9"><span id="ttjl9"></span></em>
        <address id="ttjl9"></address>

          <noframes id="ttjl9"><form id="ttjl9"></form>

          JavaScript基礎知識——JS預解析

          2019-12-30    seo達人

          JavaScript基礎知識——JS預解析

          js代碼是由瀏覽器中的JavaScript解析器來執行的。JavaScript解析器在運行JavaScript代碼時分為兩步:1預解析、2代碼執行。



          預解析

          預解析是指js引擎會把js里面所有的var與function提升到當前作用域的最前面。(這里的當前作用域包括:全局作用域與局部作用域)。

          預解析可分為:變量預解析和函數預解析

          變量預解析:就是把所有的變量聲明提升到當前的作用域的最前面但是不提升賦值操作。如下例所示:



          <script>

          console.log(num);  //結果為undefined

          var num = 10;

          </script>

          //其實際執行過程為

          var num;

          console.log(num);

          num=10;



          函數預解析:就是把所有的函數聲明提升到當期作用域的最前面 但是不包括調用函數。如下例所示:



          var num = 10

          fun();

          function fun() {   //結果是undefined

          console.log(num);

          var num = 20;

          }

          //其實際執行過程為

          var num;

          funtion fun() {

          var num;

          console.log(num);

          num=20;

          }

          num = 10;

          fun();




          日歷

          鏈接

          個人資料

          藍藍設計的小編 http://www.syprn.cn

          存檔

          亚洲va欧美va天堂v国产综合