日期:2014-05-16 浏览次数:20439 次
function myClass(){
this.a = "fuck you"; //这里定义成员a给下面的函数使用
}
myClass.prototype =
{
b:function(){
function d(){
alert(this.a); //请问这里如果引用上面定义的变量a弹出fuckyou?同时还要在这里用this.a = "shit";达到修改上面的变量a的效果
}
d();
}
}
var obj = new myClass();
obj.b();
function myClass(){
this.a = "origin";
}
myClass.prototype =
{
b:function(){
function d(obj){
alert(obj.a);
obj.a='new';
}
d(this);
alert(this.a);
}
}
var obj = new myClass();
obj.b();
------解决方案--------------------
function myClass(){
this.a = "fuck you"; //这里定义成员a给下面的函数使用
}
myClass.prototype =
{
b:function(){
var that = this;
function d(){
alert(that.a); //请问这里如果引用上面定义的变量a弹出fuckyou?同时还要在这里用this.a = "shit";达到修改上面的变量a的效果
}
d();
}
}
var obj = new myClass();
obj.b();