You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mn a0e4803194
test
11 months ago
..
dist test 11 months ago
internal test 11 months ago
CHANGELOG.md test 11 months ago
LICENSE test 11 months ago
README.md test 11 months ago
all.js test 11 months ago
allLimit.js test 11 months ago
allSeries.js test 11 months ago
any.js test 11 months ago
anyLimit.js test 11 months ago
anySeries.js test 11 months ago
apply.js test 11 months ago
applyEach.js test 11 months ago
applyEachSeries.js test 11 months ago
asyncify.js test 11 months ago
auto.js test 11 months ago
autoInject.js test 11 months ago
bower.json test 11 months ago
cargo.js test 11 months ago
compose.js test 11 months ago
concat.js test 11 months ago
concatLimit.js test 11 months ago
concatSeries.js test 11 months ago
constant.js test 11 months ago
detect.js test 11 months ago
detectLimit.js test 11 months ago
detectSeries.js test 11 months ago
dir.js test 11 months ago
doDuring.js test 11 months ago
doUntil.js test 11 months ago
doWhilst.js test 11 months ago
during.js test 11 months ago
each.js test 11 months ago
eachLimit.js test 11 months ago
eachOf.js test 11 months ago
eachOfLimit.js test 11 months ago
eachOfSeries.js test 11 months ago
eachSeries.js test 11 months ago
ensureAsync.js test 11 months ago
every.js test 11 months ago
everyLimit.js test 11 months ago
everySeries.js test 11 months ago
filter.js test 11 months ago
filterLimit.js test 11 months ago
filterSeries.js test 11 months ago
find.js test 11 months ago
findLimit.js test 11 months ago
findSeries.js test 11 months ago
foldl.js test 11 months ago
foldr.js test 11 months ago
forEach.js test 11 months ago
forEachLimit.js test 11 months ago
forEachOf.js test 11 months ago
forEachOfLimit.js test 11 months ago
forEachOfSeries.js test 11 months ago
forEachSeries.js test 11 months ago
forever.js test 11 months ago
groupBy.js test 11 months ago
groupByLimit.js test 11 months ago
groupBySeries.js test 11 months ago
index.js test 11 months ago
inject.js test 11 months ago
log.js test 11 months ago
map.js test 11 months ago
mapLimit.js test 11 months ago
mapSeries.js test 11 months ago
mapValues.js test 11 months ago
mapValuesLimit.js test 11 months ago
mapValuesSeries.js test 11 months ago
memoize.js test 11 months ago
nextTick.js test 11 months ago
package.json test 11 months ago
parallel.js test 11 months ago
parallelLimit.js test 11 months ago
priorityQueue.js test 11 months ago
queue.js test 11 months ago
race.js test 11 months ago
reduce.js test 11 months ago
reduceRight.js test 11 months ago
reflect.js test 11 months ago
reflectAll.js test 11 months ago
reject.js test 11 months ago
rejectLimit.js test 11 months ago
rejectSeries.js test 11 months ago
retry.js test 11 months ago
retryable.js test 11 months ago
select.js test 11 months ago
selectLimit.js test 11 months ago
selectSeries.js test 11 months ago
seq.js test 11 months ago
series.js test 11 months ago
setImmediate.js test 11 months ago
some.js test 11 months ago
someLimit.js test 11 months ago
someSeries.js test 11 months ago
sortBy.js test 11 months ago
timeout.js test 11 months ago
times.js test 11 months ago
timesLimit.js test 11 months ago
timesSeries.js test 11 months ago
transform.js test 11 months ago
tryEach.js test 11 months ago
unmemoize.js test 11 months ago
until.js test 11 months ago
waterfall.js test 11 months ago
whilst.js test 11 months ago
wrapSync.js test 11 months ago

README.md

Async Logo

Build Status via Travis CI NPM version Coverage Status Join the chat at https://gitter.im/caolan/async libhive - Open source examples jsDelivr Hits

Async is a utility module which provides straight-forward, powerful functions for working with asynchronous JavaScript. Although originally designed for use with Node.js and installable via npm install --save async, it can also be used directly in the browser.

This version of the package is optimized for the Node.js environment. If you use Async with webpack, install async-es instead.

For Documentation, visit https://caolan.github.io/async/

For Async v1.5.x documentation, go HERE

// for use with Node-style callbacks...
var async = require("async");

var obj = {dev: "/dev.json", test: "/test.json", prod: "/prod.json"};
var configs = {};

async.forEachOf(obj, (value, key, callback) => {
    fs.readFile(__dirname + value, "utf8", (err, data) => {
        if (err) return callback(err);
        try {
            configs[key] = JSON.parse(data);
        } catch (e) {
            return callback(e);
        }
        callback();
    });
}, err => {
    if (err) console.error(err.message);
    // configs is now a map of JSON data
    doSomethingWith(configs);
});
var async = require("async");

// ...or ES2017 async functions
async.mapLimit(urls, 5, async function(url) {
    const response = await fetch(url)
    return response.body
}, (err, results) => {
    if (err) throw err
    // results is now an array of the response bodies
    console.log(results)
})