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