如果变量和函数同名了,必须注意,函数的声明会替换变量声明;不管函数在变量的前面还是后面,赋值总会把前面的声明替换;局部作用域中有一个变量声明a,导致undefined
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="utf-8">
5 <title></title>
6 </head>
7 <body>
8 <p>
9 如果变量和函数同名了,必须注意,函数的声明会替换变量声明
10 不管函数在变量的前面还是后面,赋值总会把前面的声明替换。
11 </p>
12 <script>
13 var a=12;
14 function abc(){
15 alert(a);
16 var a=10;
17 }
18 abc();
19 //局部作用域中有一个变量声明a,导致undefined
20
21 console.log(a);
22 function a(){
23 console.log('aaa');
24 }
25 //
26 var a=1;
27 console.log(a);
28 //如果函数声明和变量声明一样,函数声明会替换变量声明,变量声明无法声明了了
29 </script>
30 </body>
31 </html>