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

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