变量对象中全局变量为何覆盖当前函数的局部变量?

function foo(a) {

  var b = 2;

  function c() {}

  var d = function() {};


  b = 3;


}


foo(1);

代码执行之后


AO = {

    arguments: {

        0: 1,

        length: 1

    },

    a: 1,

    b: 3,

    c: function c(){},

    d: reference to FunctionExpression "d"

}

请问为什么执行代码之后,b会变成3 b不是VO全局对象里面的吗?


慕桂英3389331
浏览 635回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript