對於這個片段困惑,我並不感到驚訝全局變量「A」的計算結果爲5。這個JavaScript代碼段
http://jsfiddle.net/MeiJsVa23/gZSxY/:
var a = 10;
function func(){
a = 5;
}
func(); // expect global variable 'a' to be modified to 5;
alert(a); // and this prints out 5 as expected. No surprise here.
但是,如何來爲這個代碼片斷,全球變量'a'的計算結果是10而不是5?就好像a = 5
從未發生過。
http://jsfiddle.net/MeiJsVa23/2WZ7w/:
var a = 10;
function func(){
a = 5;
var a = 23;
}
func(); // expect global variable 'a' to be modified to 5;
alert(a); // but this prints out 10!! why?
哇,我認爲你的問題已經得到解答;) – mplungjan 2012-07-09 14:37:30