?
一. 什么是作用域
?
它是指对某一变量和方法具有访问权限的代码空间, 在JS中, 作用域是在函数中维护的.
?
表示变量或函数起作用的区域,指代了它们在什么样的上下文中执行,亦即上下文执行环境。Javascript的作用域只有两种:全局作用域和本地作用域,本地作用域是按照函数来区分的。
?
二、作用域的注意事项
?
?
1.js的作用域是有函数划分的,而不是块儿
?
var too="test";
if(true){//这是在块中的定义,此时还是全局变量
var too="new test";
}
alert(too=="new test");//return true;
function test()
{
var too="old test";//这是在函数中的定义,此时是局部变量
}
?
test();
alert(too=="new test");//return true;too并没有改变
?
?
2.所有属于全局作用域的变量都是window对象的属性
?
上面例子中 第一行的 too就是等于 window.too
?
看下面的例子
?
function test()
{
too="test";
}
test();
alert(window.too="test");
?
也就是说没有显示定义的变量,它就是全局变量,虽然它可能只能在这个函数内使用。
?
?
参考资料:?? ?js中作用域?????? ?http://www.studyofnet.com/news/294.html
?
?