这里为什么可以访问到函数内定义的变量(非闭包)

代码如下:

     (function test() {
      var a = b = 5;
      alert(typeof a);
      alert(typeof b);
    })()
    alert(typeof a);
    alert(typeof b);

输出结果:
number number undefined number

这里函数外为什么还能访问到b呢

2个回答

var a = b = 5;
实际上等于
b = 5;
var a = b;

b没有经过var声明,是全局变量

那么ab之间算是什么关系,是传递或者存储的关系吗,还是只是赋值?

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!