var a=b=c=4;
首先说错误的理解:
var a=4,b=4,c=4;
验证:
function test(){
var a=b=c=4;
}
test();
如果上述理解是正确的,执行完函数test后,在外面是读取不到a,b,c的。但是在浏览器控制台
所以正确的理解应该是
c=4;
b=c;
var a=b;
var a=b=c=4;会生成全局变量b和c,局部变量a。
总结:平时写代码的时候,如果不需要全局变量,就不要使用连等运算,这样容易让人产生歧义而且会引入不必要的全局变量。