[轉]javascript的 var x = y = 0; 和 var x = 0; var y = 0;的差別

列印

上網查資料發現一個問題,以前都沒有想過的,把它貼出來做為紀錄。

如果在function裡面的話x是局部變量,y是全局變量

例如這樣:

function a(){

var x=y=0;

}

因為是從左到右賦值的,相當於

function a(){

var x=(y=0);

}

y前面沒有var關鍵字,所以是全局變量,出乎意料的結果,y可能會命名衝突。 。

所以 一般這麼寫

function a(){

var x=0,

y=0;

}