JavaScript的作用域和作用域链介绍
原创定义
- 范围就是代码 执行环境 ,全局执行环境是全局作用域,函数执行环境是私有作用域,它们是堆栈内存
- 作用域链在定义函数时确定。
- 内部环境可以通过范围链访问所有外部环境,但外部环境不能访问内部环境的任何变量和函数。
- 当您需要访问内部函数中的变量时,您将首先访问函数本身的变量对象,无论是否存在这样的变量,如果没有,则继续沿着作用域链查找,直到全局作用域。
作用域链在定义函数时确定。
var x=10;
function fn(){
console.log(x);
}
function show() {
var x=20;
fn();
}
show(); //输出10
-----------------------
var x=10;
function show() {
var x=20;
function fn(){
console.log(x);
}
fn();
}
show(); //输出20
版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除