JS基础_变量的声明提前、函数的声明提前

 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="UTF-8">
 5         <title></title>
 6         <script type="text/javascript">
 7             
 8             
 9             /*
10              * 变量的声明提前
11              *     - 使用var关键字声明的变量,会在所有的代码执行之前被声明(但是不会赋值),
12              *         但是如果声明变量时不使用var关键字,则变量不会被声明提前
13              * 
14              * 函数的声明提前
15              *     - 使用函数声明形式创建的函数 function 函数(){}
16              *         它会在所有的代码执行之前就被创建,所以我们可以在函数声明前来调用函数
17              *          
18              *    使用函数表达式创建的函数,不会被声明提前,所以不能在声明前调用
19              */
20             
21             console.log("a = "+a);//a = undefined 
22             var a = 123;
23             
24             //---------------------------------------------------------------------------
25             
26             fun(); //我是一个fun函数
27             //fun2();//报错 Uncaught TypeError: undefined is not a function
28             
29             //函数声明,会被提前创建
30             function fun(){
31                 console.log("我是一个fun函数");
32             }
33             
34             //函数表达式,不会被提前创建
35             var fun2 = function(){
36                 console.log("我是fun2函数");
37             };
38             
39             fun2();//我是fun2函数
40             
41             
42             
43         </script>
44     </head>
45     <body>
46     </body>
47 </html>

 

posted @ 2017-10-18 22:55  星辰郎周  阅读(450)  评论(0编辑  收藏  举报