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

README.md

Neo-Async

npm Travis Status Coverage Status download Total Alerts

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