Javascript 确定Node.js中forEach中调用的最后一个异步函数
在Javascript 确定Node.js中forEach中调用的最后一个异步函数,javascript,node.js,asynchronous,Javascript,Node.js,Asynchronous,在docs.forEach的每次迭代中,我都有一个异步函数调用queue.enqueue。如何确定上次迭代的docs.forEach 以下代码多次打印console.log消息,而不是在最后一次queue.enqueue调用中 var mongojs = require('mongojs') var db = mongojs('localhost/test') var collection = db.collection('myCollection') var monq = require('
docs.forEach
的每次迭代中,我都有一个异步函数调用queue.enqueue
。如何确定上次迭代的docs.forEach
以下代码多次打印console.log
消息,而不是在最后一次queue.enqueue
调用中
var mongojs = require('mongojs')
var db = mongojs('localhost/test')
var collection = db.collection('myCollection')
var monq = require('monq')
var client = monq('mongodb://localhost:27017/test')
var queue = client.queue('testQueue')
async.waterfall([
function(callback) {
collection.find({}, function(err, docs) {
callback(null, docs)
})
},
function(docs, callback) {
docs.forEach(function(doc, index) {
// Async call here
queue.enqueue('someTask', doc, function(err, job) {
// Determining the last iteration of docs.forEach
if(index = docs.length-1) {
console.log('this is the last async call')
callback(null)
}
}
})
}
])
if(index==docs.length-1)