Я следующий сценарий в MapReduce:Как использовать переменную внутри MapReduce?
splitAndGroupServices = function(members) {
var mapFn = function() {
for(var j in this.services) {
var service = this.services[j];
if(service.member_id in members)
emit(service.member_id, service);
}
}
var reduceFn = ...;
var finalizeFn = ...;
db.items.mapReduce(mapFn, reduceFn, {out: {inline:1}, finalize: finalizeFn});
}
Когда я зову:
db.loadServerScripts();
splitAndGroupServices({b1: 0, b2: 1});
я получаю сообщение об ошибке:
"errmsg" : "exception: ReferenceError: members is not defined near 'ber_id in members) { emit(ser' (line 4)",
Как я могу передать внешнюю переменную функцию в внутренняя переменная функции? В JS это действительно возможно, но Mongo это не нравится.