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

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