Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A sane control flow library.
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
README First version
package.json v0.2.0



Yet another control flow library after getting fustrated with previous ones.

## Usage

The `next` callback takes the arguments (error, data)

    var AsyncArray = require('async-array')

    var array = new AsyncArray([1, 2, 3, 4])

      .map(function (item, i, next) {
        db.query('SELECT * FROM x WHERE id = ?', [item], next)
      .done(function (error, results) {
        console.log("Got me database listings partner!")
      .forEach(function (db_result, i, next) {
        doSomethingAsync(db_result, next)

As you can see, you can chain stuff and the result is passed along from the previous operation. If you don't call `exec` immediately you can store the operation to be executed at some later time.

`AsyncArray` inherits from `Array` with the following methods added:

- map
- mapSerial
- filter
- filterSerial
- forEach
- forEachSerial

Serial methods do things one after another instead of in parallel.

Something went wrong with that request. Please try again.