javascriptの作用領域について
361 ワード
今日の親友は私に道javascriptの筆記試験問題を出しました.コードは次の通りです.
function test(){
var a = b = 2;
}
test();
alert(b);
alert(a);
このコードを見て、笑いました.間違えたと答えました.a、bは全部局所変数ですから、a and b is not definedです.そして友達が笑って、迷っています.私が間違っていますか?10数秒ためらって、もとはaは局部変数で、bはtestの中で声明していないで、だから大域変数で、とても明らかで、このような情況の下で、実行の情況はb=2であるべきで、a is not defined;あとで考えてみると、自分は本当に思考の厳格さに欠けています.