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