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

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