この質問に関連して、データを取り戻すためにコールバックを追加しようとしています。だから私はこれを試しました:
var subgroupIds = [];
var that = this;
this.getSubGroups = function (groupId,callback) {
var anotherObject = this;
this.getGroups("groupId="+groupId, function(groups) {
if ($.isEmptyObject(groups)) {
return;
} else {
$.each(groups, function(index,group) {
subgroupIds.push(group.id);
that.getSubGroups(group.id);
});
anotherObject.callback(group.id);
}
});
}
前の質問の後、クロージャについてよく理解していると思いましたが、理解していないと思います...次のエラーが発生します。
Uncaught TypeError: Object [object Window] has no method 'callback'
私はここで何が間違っているのですか?
編集
getGroupsの内容は次のとおりです。
this.getGroups = function(filter,callback,error_callback) {
this.getJSON('/'+apiVersion+'/groups/',function(data){
// run through the filter engine
output = runFilter(data, filter);
callback(output);
},error_callback);
}