如何在另一个函数的回调中调用JavaScript函数?

如何在另一个函数的回调中调用JavaScript函数?,javascript,prototype,Javascript,Prototype,这是我的代码: function User(){ this.nickname='nickname'; } User.prototype.save=function(){ dosomething(); }; User.prototype.add=function(){ navigator.geolocation.getCurrentPosition(function(positon){ this.save(); }); }; 但是this.save()是

这是我的代码:

function User(){
   this.nickname='nickname';
} 
User.prototype.save=function(){
   dosomething();
};
User.prototype.add=function(){
   navigator.geolocation.getCurrentPosition(function(positon){
        this.save();
   });
};

但是
this.save()
是错误的,我想在另一个回调中调用
save()
。我发现这不是指向用户,我如何才能正确调用
save()

这个
内部
getCurrentLocation
可能不是您所认为的。尝试:

User.prototype.add=function(){
  var self = this;
   navigator.geolocation.getCurrentPosition(function(positon){
        self.save();
   });
};

我不应该觉得这是一项成就@p.s.w.g。。。但我将其解释为one.self是javascript中的关键字,指的是窗口对象。试着用这一步来理解上下文。这真的很有帮助。