不知道该怎么命名这个题目。暂时先这么着吧,先看下边测试。
=====setTimeout================================>>>>>>
第一种:
var x = "w.x";
function a(){
var x = "a.x";
setTimeout("alert(x)");
}
a(); //-->"w.x"
第二种:
var x = "w.x";
function a(){
var x = "a.x";
setTimeout(function(){alert(x)});
}
a(); //-->"a.x"
=====eval================================>>>>>>
第一种:
var x = "w.x";
function a(){
var x = "a.x";
eval("alert(x)");
}
a(); //--> a.x
第二种:
var x = "w.x";
function a(){
var x = "a.x";
window.eval("alert(x)");
}
a(); //--> w.x
=====function================================>>>>>>
第一种:
var x = "w.x";
function a(){
var x = "a.x";
function b(){
alert(x);
}
b();
}
a(); //--> a.x
第二种:
var x = "w.x";
function a(){
var x = "a.x";
var b = Function("alert(x)");
}
a(); //--> w.x
暂时说不出个所以然来,先把他记录下来。