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

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