var a, b = 0,
fn = function(){
var a = b = 2;
};
fn();
console.log(a, b);
为什么执行完结果是a 没定义,b=2;求解
fn = function() { var a = b = 2; };
上面的a是fn的區域變數,因為有用var聲明,b沒有用var聲明,所以b是全域變數(就是window.b)
fn = function() { var a = b = 2; console.log(a); //2 };
這樣打印的才是fn的區域變數a,結果會是2