时间:2021-07-01 10:21:17 帮助过:9人阅读
二、Javascript在执行前会对整个脚本文件的声明部分做完整分析(包括局部变量),从而确定实变量的作用域。怎么理解呢?看下面一个例子:
三,当全局变量跟局部变量重名时,局部变量的scope会覆盖掉全局变量的scope,当离开局部变量的scope后,又重回到全局变量的scope,而当全局变量遇上局部变量时,怎样使用全局变量呢?用window.globalVariableName。
变量的作用范围
1. 根据作用范围不同,变量有全局变量和局部变量两种。在函数里定义的变量为局部变量,局部变量只在函数内有效。 如果局部变量和全局变量用相同的变量名,则局部变量将覆盖全局变量
<script>
//定义全局变量test
var test = "全局变量";
function checkscope( )
{
var test = "局部变量";
alert(test);
}
checkscope( );
//在函数里定义的变量为局部变量,局部变量只在函数内有效。
//如果局部变量和全局变量用相同的变量名,则局部变量将覆盖全局变量
</script>2. JavaScript语言没有块范围
<script>
function test(o)
{
//定义变量i,变量i的作用范围是整个函数
var i = 0;
if (typeof o == "object")
{
//定义变量j,变量j的作用范围是整个函数内,而不是if块内。
var j = 5;
for(var k = 0; k < 10; k++)
{
//k的作用范围是整个函数内,而不是循环体内
document.write(k);
}
}
//即使出了循环体,k的值依然存在
alert(k + "\n" + j);
}
test(document);
</script>以上就是Javascript变量类型和作用范围实例详解的详细内容,更多请关注Gxl网其它相关文章!