Bootstrap

AO(Activation Object) 执行上下文

AO对象
函数执行的前一刻,会创建一个称为执行期上下文的内部对象(AO)。一个执行期上下文定义了一个函数执行时的环境,函数每次执行时对应的执行上下文都是独一无二的,所以多次调用一个函数会导致创建多个执行上下文,当函数执行完毕时,它所产生的执行上下文会被销毁。

代码示例:

function test(a,b) {
   console.log(a); //function a () {}
   console.log(b); // undefined
   var b = 234;
   console.log(b); // 234
   a = 123;
   console.log(a); //123
   function a () {};
   var a;
   b = 234;
   var b = function () {};
   console.log(a); // 123
   console.log(b); // function () {}
};
test(1);
;