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