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