chenrui  c2abfadd11 add 3 éve
..
LICENSE c2abfadd11 add 3 éve
README.md c2abfadd11 add 3 éve
all.js c2abfadd11 add 3 éve
allLimit.js c2abfadd11 add 3 éve
allSeries.js c2abfadd11 add 3 éve
angelFall.js c2abfadd11 add 3 éve
any.js c2abfadd11 add 3 éve
anyLimit.js c2abfadd11 add 3 éve
anySeries.js c2abfadd11 add 3 éve
apply.js c2abfadd11 add 3 éve
applyEach.js c2abfadd11 add 3 éve
applyEachSeries.js c2abfadd11 add 3 éve
async.js c2abfadd11 add 3 éve
async.min.js c2abfadd11 add 3 éve
asyncify.js c2abfadd11 add 3 éve
auto.js c2abfadd11 add 3 éve
autoInject.js c2abfadd11 add 3 éve
cargo.js c2abfadd11 add 3 éve
compose.js c2abfadd11 add 3 éve
concat.js c2abfadd11 add 3 éve
concatLimit.js c2abfadd11 add 3 éve
concatSeries.js c2abfadd11 add 3 éve
constant.js c2abfadd11 add 3 éve
createLogger.js c2abfadd11 add 3 éve
detect.js c2abfadd11 add 3 éve
detectLimit.js c2abfadd11 add 3 éve
detectSeries.js c2abfadd11 add 3 éve
dir.js c2abfadd11 add 3 éve
doDuring.js c2abfadd11 add 3 éve
doUntil.js c2abfadd11 add 3 éve
doWhilst.js c2abfadd11 add 3 éve
during.js c2abfadd11 add 3 éve
each.js c2abfadd11 add 3 éve
eachLimit.js c2abfadd11 add 3 éve
eachOf.js c2abfadd11 add 3 éve
eachOfLimit.js c2abfadd11 add 3 éve
eachOfSeries.js c2abfadd11 add 3 éve
eachSeries.js c2abfadd11 add 3 éve
ensureAsync.js c2abfadd11 add 3 éve
every.js c2abfadd11 add 3 éve
everyLimit.js c2abfadd11 add 3 éve
everySeries.js c2abfadd11 add 3 éve
fast.js c2abfadd11 add 3 éve
filter.js c2abfadd11 add 3 éve
filterLimit.js c2abfadd11 add 3 éve
filterSeries.js c2abfadd11 add 3 éve
find.js c2abfadd11 add 3 éve
findLimit.js c2abfadd11 add 3 éve
findSeries.js c2abfadd11 add 3 éve
foldl.js c2abfadd11 add 3 éve
foldr.js c2abfadd11 add 3 éve
forEach.js c2abfadd11 add 3 éve
forEachLimit.js c2abfadd11 add 3 éve
forEachOf.js c2abfadd11 add 3 éve
forEachOfLimit.js c2abfadd11 add 3 éve
forEachOfSeries.js c2abfadd11 add 3 éve
forEachSeries.js c2abfadd11 add 3 éve
forever.js c2abfadd11 add 3 éve
groupBy.js c2abfadd11 add 3 éve
groupByLimit.js c2abfadd11 add 3 éve
groupBySeries.js c2abfadd11 add 3 éve
inject.js c2abfadd11 add 3 éve
iterator.js c2abfadd11 add 3 éve
log.js c2abfadd11 add 3 éve
map.js c2abfadd11 add 3 éve
mapLimit.js c2abfadd11 add 3 éve
mapSeries.js c2abfadd11 add 3 éve
mapValues.js c2abfadd11 add 3 éve
mapValuesLimit.js c2abfadd11 add 3 éve
mapValuesSeries.js c2abfadd11 add 3 éve
memoize.js c2abfadd11 add 3 éve
nextTick.js c2abfadd11 add 3 éve
omit.js c2abfadd11 add 3 éve
omitLimit.js c2abfadd11 add 3 éve
omitSeries.js c2abfadd11 add 3 éve
package.json c2abfadd11 add 3 éve
parallel.js c2abfadd11 add 3 éve
parallelLimit.js c2abfadd11 add 3 éve
pick.js c2abfadd11 add 3 éve
pickLimit.js c2abfadd11 add 3 éve
pickSeries.js c2abfadd11 add 3 éve
priorityQueue.js c2abfadd11 add 3 éve
queue.js c2abfadd11 add 3 éve
race.js c2abfadd11 add 3 éve
reduce.js c2abfadd11 add 3 éve
reduceRight.js c2abfadd11 add 3 éve
reflect.js c2abfadd11 add 3 éve
reflectAll.js c2abfadd11 add 3 éve
reject.js c2abfadd11 add 3 éve
rejectLimit.js c2abfadd11 add 3 éve
rejectSeries.js c2abfadd11 add 3 éve
retry.js c2abfadd11 add 3 éve
retryable.js c2abfadd11 add 3 éve
safe.js c2abfadd11 add 3 éve
select.js c2abfadd11 add 3 éve
selectLimit.js c2abfadd11 add 3 éve
selectSeries.js c2abfadd11 add 3 éve
seq.js c2abfadd11 add 3 éve
series.js c2abfadd11 add 3 éve
setImmediate.js c2abfadd11 add 3 éve
some.js c2abfadd11 add 3 éve
someLimit.js c2abfadd11 add 3 éve
someSeries.js c2abfadd11 add 3 éve
sortBy.js c2abfadd11 add 3 éve
sortByLimit.js c2abfadd11 add 3 éve
sortBySeries.js c2abfadd11 add 3 éve
timeout.js c2abfadd11 add 3 éve
times.js c2abfadd11 add 3 éve
timesLimit.js c2abfadd11 add 3 éve
timesSeries.js c2abfadd11 add 3 éve
transform.js c2abfadd11 add 3 éve
transformLimit.js c2abfadd11 add 3 éve
transformSeries.js c2abfadd11 add 3 éve
tryEach.js c2abfadd11 add 3 éve
unmemoize.js c2abfadd11 add 3 éve
until.js c2abfadd11 add 3 éve
waterfall.js c2abfadd11 add 3 éve
whilst.js c2abfadd11 add 3 éve
wrapSync.js c2abfadd11 add 3 éve

README.md

Neo-Async

npm Travis Status Coverage Status download Total Alerts FOSSA

Neo-Async is thought to be used as a drop-in replacement for Async, it almost fully covers its functionality and runs faster.

Benchmark is here!

Bluebird's benchmark is here!

Code Coverage

coverage

Installation

In a browser

<script src="async.min.js"></script>

In an AMD loader

require(['async'], function(async) {});

Promise and async/await

I recommend to use Aigle.

It is optimized for Promise handling and has almost the same functionality as neo-async.

Node.js

standard

$ npm install neo-async
var async = require('neo-async');

replacement

$ npm install neo-async
$ ln -s ./node_modules/neo-async ./node_modules/async
var async = require('async');

Bower

bower install neo-async

Feature

JSDoc

* not in Async

Collections

Control Flow

Utils

Mode

Benchmark

Benchmark: Async vs Neo-Async

How to check

$ node perf

Environment

  • Darwin 17.3.0 x64
  • Node.js v8.9.4
  • async v2.6.0
  • neo-async v2.5.0
  • benchmark v2.1.4

Result

The value is the ratio (Neo-Async/Async) of the average speed.

Collections

function benchmark
each/forEach 2.43
eachSeries/forEachSeries 1.75
eachLimit/forEachLimit 1.68
eachOf 3.29
eachOfSeries 1.50
eachOfLimit 1.59
map 3.95
mapSeries 1.81
mapLimit 1.27
mapValues 2.73
mapValuesSeries 1.59
mapValuesLimit 1.23
filter 3.00
filterSeries 1.74
filterLimit 1.17
reject 4.59
rejectSeries 2.31
rejectLimit 1.58
detect 4.30
detectSeries 1.86
detectLimit 1.32
reduce 1.82
transform 2.46
sortBy 4.08
some 2.19
someSeries 1.83
someLimit 1.32
every 2.09
everySeries 1.84
everyLimit 1.35
concat 3.79
concatSeries 4.45

Control Flow

funciton benchmark
parallel 2.93
series 1.96
waterfall 1.29
whilst 1.00
doWhilst 1.12
until 1.12
doUntil 1.12
during 1.18
doDuring 2.42
times 4.25
auto 1.97

License

FOSSA Status