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.
lihuilin 991dea072f 金豆完成,任务见bug表 10 months ago
..
dist 250414提交 10 months ago
internal 250414提交 10 months ago
CHANGELOG.md 250414提交 10 months ago
LICENSE 250414提交 10 months ago
README.md 250414提交 10 months ago
all.js 250414提交 10 months ago
allLimit.js 250414提交 10 months ago
allSeries.js 250414提交 10 months ago
any.js 250414提交 10 months ago
anyLimit.js 250414提交 10 months ago
anySeries.js 250414提交 10 months ago
apply.js 250414提交 10 months ago
applyEach.js 250414提交 10 months ago
applyEachSeries.js 250414提交 10 months ago
asyncify.js 250414提交 10 months ago
auto.js 250414提交 10 months ago
autoInject.js 250414提交 10 months ago
bower.json 250414提交 10 months ago
cargo.js 250414提交 10 months ago
compose.js 250414提交 10 months ago
concat.js 250414提交 10 months ago
concatLimit.js 250414提交 10 months ago
concatSeries.js 250414提交 10 months ago
constant.js 250414提交 10 months ago
detect.js 250414提交 10 months ago
detectLimit.js 250414提交 10 months ago
detectSeries.js 250414提交 10 months ago
dir.js 250414提交 10 months ago
doDuring.js 250414提交 10 months ago
doUntil.js 250414提交 10 months ago
doWhilst.js 250414提交 10 months ago
during.js 250414提交 10 months ago
each.js 250414提交 10 months ago
eachLimit.js 250414提交 10 months ago
eachOf.js 250414提交 10 months ago
eachOfLimit.js 250414提交 10 months ago
eachOfSeries.js 250414提交 10 months ago
eachSeries.js 250414提交 10 months ago
ensureAsync.js 250414提交 10 months ago
every.js 250414提交 10 months ago
everyLimit.js 250414提交 10 months ago
everySeries.js 250414提交 10 months ago
filter.js 250414提交 10 months ago
filterLimit.js 250414提交 10 months ago
filterSeries.js 250414提交 10 months ago
find.js 250414提交 10 months ago
findLimit.js 250414提交 10 months ago
findSeries.js 250414提交 10 months ago
foldl.js 250414提交 10 months ago
foldr.js 250414提交 10 months ago
forEach.js 250414提交 10 months ago
forEachLimit.js 250414提交 10 months ago
forEachOf.js 250414提交 10 months ago
forEachOfLimit.js 250414提交 10 months ago
forEachOfSeries.js 250414提交 10 months ago
forEachSeries.js 250414提交 10 months ago
forever.js 250414提交 10 months ago
groupBy.js 250414提交 10 months ago
groupByLimit.js 250414提交 10 months ago
groupBySeries.js 250414提交 10 months ago
index.js 250414提交 10 months ago
inject.js 250414提交 10 months ago
log.js 250414提交 10 months ago
map.js 250414提交 10 months ago
mapLimit.js 250414提交 10 months ago
mapSeries.js 250414提交 10 months ago
mapValues.js 250414提交 10 months ago
mapValuesLimit.js 250414提交 10 months ago
mapValuesSeries.js 250414提交 10 months ago
memoize.js 250414提交 10 months ago
nextTick.js 250414提交 10 months ago
package.json 250414提交 10 months ago
parallel.js 250414提交 10 months ago
parallelLimit.js 250414提交 10 months ago
priorityQueue.js 250414提交 10 months ago
queue.js 250414提交 10 months ago
race.js 250414提交 10 months ago
reduce.js 250414提交 10 months ago
reduceRight.js 250414提交 10 months ago
reflect.js 250414提交 10 months ago
reflectAll.js 250414提交 10 months ago
reject.js 250414提交 10 months ago
rejectLimit.js 250414提交 10 months ago
rejectSeries.js 250414提交 10 months ago
retry.js 250414提交 10 months ago
retryable.js 250414提交 10 months ago
select.js 250414提交 10 months ago
selectLimit.js 250414提交 10 months ago
selectSeries.js 250414提交 10 months ago
seq.js 250414提交 10 months ago
series.js 250414提交 10 months ago
setImmediate.js 250414提交 10 months ago
some.js 250414提交 10 months ago
someLimit.js 250414提交 10 months ago
someSeries.js 250414提交 10 months ago
sortBy.js 250414提交 10 months ago
timeout.js 250414提交 10 months ago
times.js 250414提交 10 months ago
timesLimit.js 250414提交 10 months ago
timesSeries.js 250414提交 10 months ago
transform.js 250414提交 10 months ago
tryEach.js 250414提交 10 months ago
unmemoize.js 250414提交 10 months ago
until.js 250414提交 10 months ago
waterfall.js 250414提交 10 months ago
whilst.js 250414提交 10 months ago
wrapSync.js 250414提交 10 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)
})