当前位置:嗨网首页>书籍在线阅读

20-理解变量作用域

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

3.7 理解变量作用域

在JavaScript应用程序中添加条件、函数和循环时,必须理解变量作用域。变量作用域的含义是:在当前执行的代码行中,特定变量名的值是什么?

在JavaScript中,可定义变量的全局版和局部版。在主JavaScript中定义的是变量的全局版,而在函数内部定义的是变量的局部版。在函数中定义局部版时,将在内存中创建一个新变量。在这个函数内,引用的是局部版;在这个函数外部,引用的是全局版。

为更好地理解变量作用域,请看下面的代码:

01 var myVar = 1;
02 function writeIt(){
03  var myVar = 2;
04  print("Variable = " + myVar);
05  writeMore();
06 }
07 function writeMore(){
08  print("Variable = " + myVar);
09 }
10 writeIt();

第1行定义了全局变量myVar;接下来第3行在函数writeIt()内部定义了该变量的局部版,因此,第4行在控制台中显示的是Variable = 2。接下来,第5行调用了函数writeMore();由于在函数writeMore()中没有定义变量myVar的局部版,因此第8行写入到控制台的是全局变量myVar的值。