作用域和作用域链的理解

152 阅读1分钟

ES5 变量作用域和函数作用域

变量作用域:局部变量和全局变量,局部变量优先级高于全局变量; 全局变量的作用域是全局的

ES6 提供块级作用域

函数作用域:函数内声明的所有变量,在函数体内是可见可调用的

作用域链:当创建一个函数时候,实际上就保存一个函数作用域链,执行一个函数时候会创建一个执行上下文的大运行环境,其实就是当前环境和上一个执行上下文的一个层层链式管理,通过这种关系,我们在有访问权限下,保证对变量的有序访问,内部可以访问外部,外部不能访问内部