执行环境包括全局执行环境函数执行环境,window对象,因此所有全局变量和函数都是作为window对象的属性和方法创建的。某个执行环境中的所有代码执行完毕后,该环境被销毁, 保存在其中的所有变量和方法也随之销毁(全局执行环境直到应用程序退出——例如关闭网页或浏览器——时才会被销毁)
函数执行环境:当执行流进入一个函数时,函数的环境就会被推入一个环境栈中,而在函数执行之后,栈将其环境弹出,把控制权返回之前的执行环境。
作用域链:当代码在一个环境中执行时,会创建变量对象的一个作用域链。作用域链的用途是保证对执行环境有权访问的所有变量和函数的有序访问。作用域链的前端,始终都是当前执行的代码所在环境的变量对象。
arguments对象——包含环境——下一个包含环境——……——全局包含环境的变量对象 。
变量的执行环境有助于确定应该何时释放内存