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