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

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