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