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

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