Javascript Angularjs承诺此引用窗口

Javascript Angularjs承诺此引用窗口,javascript,angularjs,promise,Javascript,Angularjs,Promise,我制作了一个带有加载函数的basemodel,定义如下: BaseModel.prototype.load = function(id) { var deferred = $q.defer(); var self = this; Db.getById(this.getTableName(), id).then(function(data) {

我制作了一个带有加载函数的basemodel,定义如下:

    BaseModel.prototype.load = function(id) {
                    var deferred = $q.defer();

                    var self = this;
                    Db.getById(this.getTableName(), id).then(function(data) {
                        deferred.resolve(new BaseModel(data));
//self has a reference to window here
                    }, function(err) {
                        deferred.reject(null);
                    });

                return deferred.promise;
            };
在派生自此基本模型的子类中,我将其命名为:

return BaseModel.prototype.load.call(this, id);
但在承诺的“成功”部分,“var”自身有一个指向窗口的参考。。。有可能保留对我的对象的引用吗?如果有,如何保留?我找不到这样的例子


提前谢谢

返回BaseModel.prototype.load.call(this,id)
return childObj.load(id);