你的位置:首页 > Java教程

[Java教程]javascript作用域详解


javascript作用域详解:
作用域和作用域链是javascript中最重要的概念之一,是必须要掌握的,否则将在以后的学习中举步维艰,本章节结合实例介绍一下这两个重要的概念,希望能够给大家带来一定的帮助。
一.作用域:
一般说来,代码中的变量和函数并不是在任何地方都可以用的,有时候他们的可用区域是被限定在一个范围内的,那么这个范围就称作为作用域,使用作用域有点有很多,比如提高函数的独立性,减少名称冲突等等,好处很多,这里就不多说了。
变量作用域的确定:
在任何地方都可以访问变量和函数具有全局作用域,下面来介绍一下如何让一个变量和函数具有全局作用域。
1).定义在函数外面的变量具有全局作用域,代码如下:

 

var global="蚂蚁部落";function a(){ var x=1; function b(){   var y=2; }}

 

以上代码中,除去global是全局变量之外,x和y都是局部变量。变量x尽管在b函数外面,但是它还在a函数里面。
global可以在任何区域都有效,x可以在函数a和函数b中有效,y则只在函数b中有效。
2).没有使用var关键字声明的变量具有全局作用域:
在通常情况声明一个变量都要使用var关键字,如果不使用var关键字,那么无论在何处声明此变量,它的作用域都是全局的。
代码如下:

 

var global="蚂蚁部落";function a(){ var x=1; function b(){  y=2; } b();}a()console.log(y);

 

以上代码可以输出y的值,这说明y的作用域具有全局性。

原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=8537

更多内容可以参阅:http://www.softwhy.com/javascript/