JS之函数(二)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/hudie_1993/article/details/82798434

函数讲解二

   1、JS三部曲

         语义分析、预编译、解释执行

   2、预编译详解

         重点:函数声明整体提升

                     变量 声明提升

         例子:


                 test12();

               function test11(){

                  console.log("你好");

                }


              function test12(){

                  console.log("你好2");

                }

        虽说在JS中是属于顺序执行语句,但对于函数的声明和调用,如果调用放置在函数之前或者之后,JS在预编译时,根据函数声明整体提升会将定义的函数放置在JS片段的最前面,即:

            <script type="text/javascript">

                  function test11(){

                        console.log("你好");

                   }


                 function test12(){

                        console.log("你好2");

                   }

                 test12();

          </script>

      如果是变量,例如:

               <script type='text/javascript'>

                     console.log(a);

                     var a = 123;//这语句属于变量声明赋值

             </script>

      结果将显示:undefined

     实质的执行过程为【变量 声明提升】:

                      <script type='text/javascript'>

                           var a;

                           console.log(a);

                           a = 123;

                     </scipt>

          但是如果为此种情况

                        <script type='text/javascript'>

                             console.log(a);

                       </script>

         则属于程序错误

猜你喜欢

转载自blog.csdn.net/hudie_1993/article/details/82798434