Я пишу приложения с помощью NodeJS, ExpressJS, MongoDB (с Мангуста) ...NodeJS V8 Pass дополнительный аргумент обратного вызова
Все работает отлично, но, когда у меня есть цикл для выборки записей и сделать что-то с результаты, как это:
for(var i = 0; i < 10; i++) {
recods.findOne({number: i}, function(err,doc){
...
});
}
переменная «я» в области видимости функции обратного вызова передается по ссылке, и результат не желательно.
Когда вызов вызван, цикл уже запущен, и переменная изменилась.
Если я пытаюсь передать аргумент как анонимные функции, не работает, потому что заменить необходимые аргументы:
for(var i = 0; i < 10; i++) {
records.findOne({number: i}, (function(err,doc){
...
})(i));
}
Таким образом, я потерял «эээ, документ» аргументы,
Что я могу сделать для решения этой большой проблемы?
Спасибо, брат, эта работа отлично: P – wrivas