Home  >  Article  >  Web Front-end  >  javascript中的作用域scope介绍_javascript技巧

javascript中的作用域scope介绍_javascript技巧

WBOY
WBOYOriginal
2016-05-16 18:13:181055browse

而在javascript中,变量的作用域是按函数来划分的——变量在某个函数范围内有效。比如:

复制代码 代码如下:

var f = false;
if(true) { var f = true; } //此时f位于if内,也就是块内,等价于还是全局范围内
alert(f) //所以,结果为true


再如下例:
复制代码 代码如下:

var f = false;
function test() {
  var f = true; //这是函数内定义的变量,只在函数内部有效,函数执行完毕后,该变量将被释放
}
test();
alert(f) //结果为false,并没有因为test()的执行而改变



再有,在javascript中声明的全局变量都可以看作是window对象的一个属性,比如:
复制代码 代码如下:

var test = "this is a test";
alert(window.test == test) //结果为true

这正好验证了上边所说的全局变量也是window对象的属性

最后,我们来看
[code]
function test() {
  f = false;
}
test();
alert(f) //结果为false
[html]

那么,如果在声明变量时,如果不添加var(隐式声明),也被看作了全局变量了,尽管它是定义在函数之内的。
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn