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

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