您的位置:首页 > Web前端 > JavaScript

夺命雷公狗---javascript NO:05 js函数中的作用域

2015-12-09 09:30 471 查看
全局作用域

局部作用域

示例:

<script>
var i = 10;  //全局变量
function fun(){
var i =100;  //局部变量
}
fun();
</script>


问题:为什么在JavaScript代码中,局部作用域可以引用全局变量?

答:是由于受到作用域链的影响

什么是作用域链

在JavaScript代码中,如果在局部作用域引入了一个变量,其首先回到当前作用域寻找该变量的声明语句,如找到,则直接使用该变量,否则继续向上一级作用域中寻找,如找到则使用,否则继续向上一级作用域中寻找…直至最顶级作用域(全局作用域),如果在全局作用域还未找到该变量的声明语句,系统会自动在全局作用域声明该变量,我们把这种链式查找就称之为作用域链。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: