js执行环境

来源:互联网 发布:淘宝原创衣服品牌 编辑:程序博客网 时间:2024/04/20 07:46

每个函数都有自己的执行环境,当执行流进入一个函数时,函数的环境就会被推入一个环境栈。当代码在环境中执行时,会创建变量对象的一个作用域链(保证执行环境有权访问的所有变量和函数的有序访问。)

var a='2';

function getMess()

{

var b=3;

function getAB(){

alert(a+b);

};

getAB();

}

getMess();

结果alert(23);

原因:以上代码共有3个执行环境:

全局执行环境:window

getMess()局部环境,getAB()局部环境,


内部环境可以访问作用域链的所有的外部环境,外部环境不能访问内部环境的中的任何变量和函数。