Async concurrent iterator (async forEach)
Like async.each(), but tiny.
I often use async.each()
for doing async operations when iterating, but I almost never use the other gadzillion methods in async
.
Async iteration is one of the most used async control flow patterns.
$ npm install --save each-async
var eachAsync = require('each-async'); eachAsync(['foo','bar','baz'], function (item, index, done) { console.log(item, index); done(); }, function (error) { console.log('finished'); }); //=> foo 0 //=> bar 1 //=> baz 2 //=> finished
The array you want to iterate.
A function which is called for each item in the array with the following arguments:
item
: the current item in the arrayindex
: the current indexdone([error])
: call this when you're done with an optional error. Supplying anything other than undefined
/null
will stop the iteration.Note that order is not guaranteed since each item is handled concurrently.
A function which is called when the iteration is finished or on the first error. First argument is the error passed from done()
in the callback
.
MIT © Sindre Sorhus