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