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

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