1 / 6
文档名称:

js变量作用域.doc

格式:doc   页数:6页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

js变量作用域.doc

上传人:xyb333199 2015/6/2 文件大小:0 KB

下载得到文件列表

js变量作用域.doc

相关文档

文档介绍

文档介绍:每一种语言都有变量的概念,变量是用来存储信息的一个元素。比如下面这个函数:
1function Student(name,age,from)
2{
3 = name;
4 = age;
5 = from;
6 = function()
7 {
8 return "my information is name: "++",age : "++", from :" +;
9 }
10}
Student类有三个变量,分别为name(名字),age(年龄),from(籍贯),这三个变量构成了描述一个对象的信息。当然,这里还有一个方法用来返回Student的信息。
但是,我们是不是定义了一个变量,它就能一直存在着,并且还有可能在任何地方都能被访问和使用直到其被销毁?仔细想想,上面的需求是比较过分的,因为某些变量在某个功能实现后就不再利用了,但如果这个变量还存在的话,就占用了系统资源了,俗语曰:“站着茅坑不拉#$%”。
于是我们对变量的及时和按需求地销毁有一个探讨的话题了。
好,切入正题吧,就本人所接触过的来讲,js中支持如下几种类型的变量,分别为:局部变量、类变量、私有变量、实例变量、静态变量和全局变量。接下来我们就一一探讨研究下。
局部变量:
局部变量一般指在{}范围内有效变量,也就是语句块内有效的变量,如:
1function foo(flag)
2{
3 var sum = 0;
4 if(flag == true)
5 {
6 var index;
7 for(index=0;index<10;index++)
8 {
9 sum +=index;
10 }
11 }
12 ("index is :"+index+"<br>");
13 return sum;
14}
15//("sum is :" +sum+"<br>");
("result is :"+foo(true)+"<br>");
该代码执行后输出的结果为:“index is :undefined”和“result is :0”,我们可以看到希望输出的index变量的值为undefined,也就是未定义。因此我们可以发现,index变量在if语句块结束后即被销毁了。那么“sum”变量呢?这个变量在foo()函数段执行完毕后被销毁了,如果您去掉我注释的那条语句,再执行,您将会发现系统将报错。值得注意的是,如果我把上面的foo()函数改成如下:
1function foo(flag)
2{
3 var sum = 0;
4 for(var index=0;index<10;index++)
5 {
6 sum +=index;
7 }
8 ("index is :"+index+"<br>");
9 return sum;
10}
您将可以看见可以输出index值("index is :10")