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

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