javascript复习--全局变量与局部变量

来源:互联网 发布:java上传excel到服务器 编辑:程序博客网 时间:2024/05/17 02:07

全局变量(global variable)可以在声明它的脚本中任何位置引用它。

局部变量(local variable)只存在于对它做出声明的函数内部。

因此在函数内部我们既可以使用全局变量也可以使用这个函数的局部变量。这可能会导致一些问题。如果在函数内部不小心使用了全局变量的名字,即使本意是想使用局部变量,也会认为在引用那个全局变量。

例如:

<span style="font-size:18px;">function square(num){total = num*num;return total;}var total = 50;var number = square(20);alert(total);</span>

结果是400;

但是我们可以使用var关键字明确的为在函数中使用的变量设定一个作用域。如果在某个函数中使用了var,那个变量将被视为局部变量,只存在于这个函数的上下文中;反之,如果没有使用var,那个变量将被视为一个全局变量,函数中的变量将会覆盖现有变量的值。

<span style="font-size:18px;">function square(num){var total = num*num;return total;}var total = 50;var number = square(20);alert(total);</span>

现在将会输出50;

现在,全局变量total变得安全了,不会被函数内变量影响。

函数在行为方面应该表现的像一个自我包容的脚本,意味着在定义一个函数时,我们必须把它内部的变量全部明确的声明为局部变量。





0 0