求教关于作用域的问题
var authorName="山边小溪";
function doSomething(){
var blogName="梦想天空";
function innerSay(){
alert(blogName);
}
innerSay();
}
alert(authorName); //山边小溪
alert(blogName); //脚本错误
doSomething(); //梦想天空
innerSay() //脚本错误
这段代码刚从晚上看到的
请教下innerSay() //脚本错误 为什么会出现错误啊?
doSomething(); //梦想天空 为什么又能正确输出结果呢?
想了半天没绕过来
不是里面的可以访问外面的变量,而外面的访问不了里面的吗?
------解决方案--------------------函数里面定义的变量只作用当前函数。。
------解决方案--------------------JScript code
<script type="text/javascript">
var authorName="山边小溪";
function doSomething(){
var blogName="梦想天空";
function innerSay(){
alert(blogName);
}
innerSay();
}
alert(authorName); //山边小溪
alert(blogName); //脚本错误 blogName是在doSomething里定义的局部变量,这里不能使用
doSomething(); //梦想天空
innerSay() //脚本错误 innerSay()在doSomething里定义的局部函数,这里不能使用
</script>