JavaScripr学习(2)

<html>
<head>
<script>
var a=10;
function f1(){
//a=11; //-----①
//var a; //-----②
a=11;
b=20; //如果在函数内部没有申明变量,变量视为全局变量 编译时自动会给b声明变量 var b
}
f1();
alert(a); //在①的情况下,是给全局变量a赋值成11,输出的是11。在②的情况下,是在函数内部声明变量,并赋值的,只使用在函数内部,所以打印出来的值是10.
alert(b);
</script>
</head>
</html>

 

直接写在SCRIPT中的变量称为全局变量,作用域是整个script标签,在方法内部定义的变量称为局部变量,如果在这个方法外部有使用了这个变量,就叫闭包。 在使用变量时,在方法内部,加上var才表示局部变量,否则为全局变量。
难点是全局、局部变量和闭包
为了防止闭包和使用变量出现作用域问题,变量必须要先声明在使用。

posted @ 2016-09-27 09:06  Magic_Cc  阅读(161)  评论(0编辑  收藏  举报