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