1 / 6
文档名称:

js变量作用域.doc

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

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

分享

预览

js变量作用域.doc

上传人:endfrs 2016/5/5 文件大小: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 ,也就是未定义。因此我们可以发现, inde x 变量在 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") ,这个是 js 和其他语言的不同地方, 因为 index 是在 for 循环的{} 外面定