我用Javascript编写了以下代码。functionmain(){this.a;this.set=function(){a=1;}}varl=newmain();alert("Initialvalueofais"+l.a);l.set();alert("aftercallingset()valueofais"+l.a);在这两种情况下,我得到的a的值都是未定义的。为什么即使在我调用set()之后a仍是未定义的? 最佳答案 你需要用this.a引用a。否则,您指的是局部变量a(如果您使用了var,省略它已在window对象,本质上