作用域链的作用是保证执行环境下对变量和函数的访问是有序的;
作用域链的变量只能向上访问,当变量访问到window对象时即被终止;
(注意:Javascript没有块级作用域。可以通过(function(){})()立即执行的形式实现块级作用域;当然ES6可以通过{}搭配let const形成块级作用域);
函数的作用域内的变量,如果在本作用域内没有找到定义,则会往一层一层上一级查找,直到找到全局作用域,如果都没有则返回undefiened,这种一层一层的类似锁链的关系,叫作用域链
作用域链的作用是保证执行环境下对变量和函数的访问是有序的;
作用域链的变量只能向上访问,当变量访问到window对象时即被终止;
(注意:Javascript没有块级作用域。可以通过(function(){})()立即执行的形式实现块级作用域;当然ES6可以通过{}搭配let const形成块级作用域);
函数的作用域内的变量,如果在本作用域内没有找到定义,则会往一层一层上一级查找,直到找到全局作用域,如果都没有则返回undefiened,这种一层一层的类似锁链的关系,叫作用域链