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

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