变量的作用域链:
//就是一个作用域中套着一个作用域,形成了多层作用域,就是作用域链。
访问:
//在第一个函数中访问一个变量
//首先查看自身作用域中是否有这个变量,有就使用
//没有,向外层作用域查找,有就使用
//还没有,再向外层作用于查找,有就使用
//还是没有,继续,一直会查找到全局
赋值改变:
//在一个函数中改变一个变量的值
//首先查看自身作用域中是否有这个变量,有就使用
//没有,向外层作用域查找,有就使用
//还没有,再向外层作用于查找,有就使用
//还是没有,继续,一直会查找到全局
var n1 = 1;
var n2 = 2;
function fn1() {
var n1 = 3;
var n2 = 4;
function fn2() {
var n1 = 6;
function fn3() {
var n1 = 8;
console.log(n1);//8
n2 = 9;
console.log(n2);//9
}
fn3();
}
fn2();
}
fn1()
console.log(n2);//1
博客主要介绍了JavaScript中变量的作用域链,即多层作用域嵌套。在访问变量时,先在自身作用域查找,没有则向外层查找直至全局;赋值改变变量时同理。还给出了相关代码示例,展示了作用域链的实际应用。

被折叠的 条评论
为什么被折叠?



