码迷,mamicode.com
首页 > 编程语言 > 详细

javascript (一)

时间:2015-08-05 17:49:37      阅读:123      评论:0      收藏:0      [点我收藏+]

标签:

一 变量作用域

1.未使用 var声明的变量默认为全局变量

2.如果一个 function {}中使用了var ,那个变量被视为局部变量,它只存在于这个函数的上下文中;反之如果没有使用 var声明,则默认是全局变量

二 预编译与执行

js分块预编译和执行期,预编译期处理所以使用var 声明的变量(此时他们的值为 undefined),和 function声明的函数,例如:

1 <script>
2 var name=‘li si‘;
3 function test(){ 4 alert(name); 5 var name=‘zhang san‘; 6 } 7 8 test()// undefiend 9 </script>

这段代码相当于

 1 1 <script>
 2   var name;
 3       name=‘li si‘;
4 3 function test(){ 5 var name; 6 4 alert(name); 7 name=‘zhang san‘; 8 6 } 9 7 10 8 test()// undefiend 11 9 </script>

所以好的写代码习惯是将所有要使用的变量写到代码块的最前面‘

变量的作用域是以函数为单位的不是一for while 等等为单位的,所以,在test中 name 变量是 zhangsan 一旦test调用结束,name 的值就变为 lisi

 

javascript (一)

标签:

原文地址:http://www.cnblogs.com/haigui-zx/p/4705080.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!