var a=12,
b=13,
c=14;
function fn(a){
/*
第一步形参赋值
a=12
第二步变量提升
var b;
=>在私有作用域中,只有以下两种情况是私有变量
1.声明过的变量(带var/function)
2.形参也是私有变量
剩下的都不是私有变量,都需要基于作用域链的机制向上查找,只有a,b是私有变量
*/
console.log(a,b,c); //12 undefined 14(c是全局的)
var b = c = a = 20;
/*
var b = 20;
c = 20;
a = 20;
*/
console.log(a,b,c); //20 20 20
}
fn(a);
console.log(a,b,c);