欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

JavaScript作用域链

程序员文章站 2024-02-17 16:36:22
...

作用域

变量和函数的可访问范围,它控制着函数与变量的可见性和生命周期

局部作用域((AO Activation Object)) 只能在当前函数中访问
全局作用域(window(Global Object)) 一旦定义,在代码中的任何位置都可以访问

var a = 10;		// 全局变量
function fun(){
	var b = 100;// 局部变量
	c = 1000;	// 全局变量
}

作用域链

通俗地讲,当声明一个函数时,局部作用域一级一级向上包起来,就是作用域链。

1.当执行函数时,总是先从函数内部找寻局部变量

2.如果内部找不到(函数的局部作用域没有),则会向创建函数的作用域(声明函数的作用域)寻找,依次向上

JavaScript作用域链
内部环境可以通过作用域链来访问外部环境的属性和方法,但是,外部环境不能访问内部环境的任何属性和方法。注意,只能通过定义函数来延长作用域链条。