var的作用域和执行对象

112 阅读1分钟
  1. 代码打印的结果是 function b(){ b = 20; console.log(b); }
var b = 10; 
(function b(){ 
    b = 20; 
    console.log(b); 
})();
  1. 因为b会先找局部变量b=20,b是全局变量,所以要向外寻找最近的,输出函数function
  2. 若想输出b=20,则需要var b=20
  3. 若想输出b=10,则需要console.log(window.b)